Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 записи одной таблицы, которых нет в другой  [new]
студент сзпи
Guest
Есть две таблицы:

table1 (id int, name varchar, count int)
table2 (id int, name varchar, count int)

То есть они одинакавы (по структуре).

В таблице table1 есть "все" записи, в table2 есть половина записей из table1

Как сделать - получить результат всех записей из table2 и плюс те записи из table1, которых нет в table2?

Спасибо.
26 апр 05, 14:11    [1498344]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
Витал
Member

Откуда: Россия, Санкт-Петербург
Сообщений: 2033
LEFT (RIGHT) JOIN таблиц
26 апр 05, 14:15    [1498372]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
студент сзпи
Guest
:) Я сейчас почти на экзамене.

У меня нет ничего, чтобы читать об джойнах. У меня нет ничего, чтобы проверять :)
26 апр 05, 14:17    [1498390]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
студент сзпи
:) Я сейчас почти на экзамене.

У меня нет ничего, чтобы читать об джойнах. У меня нет ничего, чтобы проверять :)

Тогда ищите поиском.
26 апр 05, 14:18    [1498394]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
itON
Member

Откуда: Москва
Сообщений: 391
select a.* from table1 a
left join table2 b
on a.id=b.id
26 апр 05, 14:30    [1498461]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
Gerros
Member

Откуда: Харьков
Сообщений: 516
select * from table1

Как ни странно...
26 апр 05, 14:42    [1498534]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
itON
Member

Откуда: Москва
Сообщений: 391
2Gerros
А остальную половину из table2 как?
select id,name,count from table2 union
select a.id,a.name,a.count from table1 a
left join t2 b
on a.id=b.id
where b.id is null
26 апр 05, 14:46    [1498555]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
deepdark
Member

Откуда:
Сообщений: 3
itON
2Gerros
А остальную половину из table2 как?


дык а по условию задачи остальная половина содержится в table1
)
26 апр 05, 14:56    [1498605]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
itON
Member

Откуда: Москва
Сообщений: 391
студент сзпи
В таблице table1 есть "все" записи, в table2 есть половина записей из table1

Я так понял, что в table2 содержится не только половина записей из table1, но и еще какие-то "свои" данные...
26 апр 05, 15:00    [1498621]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
deepdark
Member

Откуда:
Сообщений: 3
itON
студент сзпи
В таблице table1 есть "все" записи, в table2 есть половина записей из table1

Я так понял, что в table2 содержится не только половина записей из table1, но и еще какие-то "свои" данные...


а если тада так

select * from table2
union all
select * from table1 where id not in (select id from table2)
26 апр 05, 15:11    [1498669]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
deepdark
Member

Откуда:
Сообщений: 3
но джойнами лушше:) правда условие задачаи грит, шо table1 содержит все записи..и table2 является подмножеством table1
26 апр 05, 15:13    [1498686]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
itON
Member

Откуда: Москва
Сообщений: 391
deepdark
но джойнами лушше:) правда условие задачаи грит, шо table1 содержит все записи..и table2 является подмножеством table1

Ну дык я join и юзал...
26 апр 05, 15:18    [1498724]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: записи одной таблицы, которых нет в другой  [new]
6oJIT
Guest
А вот у меня такая проблема!
заказываются столы в кафе
2 таблиы
st(id,x,y,t)
zakaz(id,name,surn,date,time,id_s)

id=id_S связь

мне надо выбрать те столы которые не заказаны на выбранную дату

select * from st,zakaz where st.id<>zakaz.id_s AND zakaz.date=DATE() - моя версия которая не работает
в результате запроса надо видеть только данные из таблицы st
21 май 11, 22:05    [10689434]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
iljy
Member

Откуда:
Сообщений: 8711
6oJIT,

not exists.
21 май 11, 22:10    [10689459]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
6oJIT
Guest
Проблему решил!

select * from st where st.id NOT in (SELECT zakaz.id_s FROM zakaz WHERE zakaz.date=DATE())



проблема была в том что помеченные на удаление столы и заказы выводились в результат... вопрос другой как сделать pack после удаления...
21 май 11, 22:11    [10689467]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
6oJIT
вопрос другой как сделать pack после удаления...
Чего-чего сделать?
21 май 11, 22:30    [10689526]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
6oJIT
Guest
Я пишу диплом на delphi + fox pro

delete не удаляет из базы а помечает на удаление, чтобы полностью удалить всю труху я захожу в базу и пишу pack чтобы все помеченные файлы удалились

в смысле я разобрался уже у меня было переполнение памяти из за этого и не все динамические компоненты удалялись с формы...
нашел штучку которая нормально все удаляет
22 май 11, 14:23    [10690454]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
проходящий.
Guest
6oJIT
Я пишу диплом на delphi + fox pro
Тогда какого Вы пишете в форум по MS Sql серверу?

delete не удаляет из базы а помечает на удаление, чтобы полностью удалить всю труху я захожу в базу и пишу pack чтобы все помеченные файлы удалились
ФигнюВы пишете.
22 май 11, 15:03    [10690524]     Ответить | Цитировать Сообщить модератору
 Re: записи одной таблицы, которых нет в другой  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
6oJIT
Я пишу диплом на delphi + fox pro
Ага. Пишу диплом. А нужный форум до сих пор выбрать не в состоянии.

Закрыто.
22 май 11, 18:06    [10690727]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить