|
|
|
Получить данные, которые есть в одной таблице и которых нет в другой
|
|||
|---|---|---|---|
|
#18+
У меня такой вопрос: есть таблица 1 с полями id, ... и таблица 2 тоже с id и др. полями Подскажите плиз запрос, чтобы вывести строки из таблицы 1, id которых не встречаются в табл. 2 Т.е. напр в табл 1 есть записи с id 1,2,3,4,5 В таблице 2 есть записи с шв 3,4 В итоге запрос должен вернуть 1,2,5 Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2007, 19:55 |
|
||
|
Получить данные, которые есть в одной таблице и которых нет в другой
|
|||
|---|---|---|---|
|
#18+
Читай на тему ключевых слов minus, not exists, not in, outer join. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2007, 21:08 |
|
||
|
Получить данные, которые есть в одной таблице и которых нет в другой
|
|||
|---|---|---|---|
|
#18+
novi111У меня такой вопрос: есть таблица 1 с полями id, ... и таблица 2 тоже с id и др. полями Подскажите плиз запрос, чтобы вывести строки из таблицы 1, id которых не встречаются в табл. 2 Т.е. напр в табл 1 есть записи с id 1,2,3,4,5 В таблице 2 есть записи с шв 3,4 В итоге запрос должен вернуть 1,2,5 Спасибо. Все зависит от СУБД (точнее, от реализованного в ней диалекта языка SQL). В качестве примера - СУБД Линтер (другие СУБД имеют аналогичные возможности). create or replace table tab1 (i int); create or replace table tab2 (i int); insert into tab1 values (1); insert into tab1 values (2); insert into tab1 values (3); insert into tab1 values (4); insert into tab1 values (5); insert into tab2 values (3); insert into tab2 values (4); 1-й вариант: SELECT tab1.i FROM tab2 UNION JOIN tab1 ON tab1.i=tab2.i; 2-й вариант (если выборки из двух разных Select-запросов могут быть приведены к единому виду - по количеству и типу столбцов) select * from tab1 except select * from tab2; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2007, 16:30 |
|
||
|
Получить данные, которые есть в одной таблице и которых нет в другой
|
|||
|---|---|---|---|
|
#18+
В MSSQL должно сработать так: select * from table_1 where id not in (select id from table_2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2007, 16:53 |
|
||
|
Получить данные, которые есть в одной таблице и которых нет в другой
|
|||
|---|---|---|---|
|
#18+
СУБД - Mysql, так что вложенные запросы не подходят ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2007, 12:03 |
|
||
|
Получить данные, которые есть в одной таблице и которых нет в другой
|
|||
|---|---|---|---|
|
#18+
sozonСУБД - Mysql, так что вложенные запросы не подходят Так и спросили бы в форуме по Mysql. Мелкие проблемы с запросами в Проектировании не обсуждаются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2007, 12:43 |
|
||
|
Получить данные, которые есть в одной таблице и которых нет в другой
|
|||
|---|---|---|---|
|
#18+
Так пойдет:(Таблица1 - имеет все записи которых нет в Таблица2) SELECT Таблица1.* FROM Таблица1 LEFT JOIN Таблица2 ON Таблица1.ID = Таблица2.ID WHERE (((Таблица2.ID) Is Null)); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2007, 13:28 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=34422354&tid=1544649]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
214ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 536ms |

| 0 / 0 |
