[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: проверка по двум таблицам
alekz
есть 2 таблицы, первая:
mixes(id, title, date)
id title date
260 give it 2007-11-11 15:02:42
261 macrovision 2007-11-11 15:03:54
262 1 year 2007-11-11 15:04:45
263 2007-11-11 15:05:32
264 beautiful muzic 2007-11-11 15:06:18
265 clubbers guide summer mix 1 2007-11-11 15:07:06
266 clubbers guide summer mix 2 2007-11-11 15:07:42
267 essential selection live mix 2007-11-11 15:09:12
268 Rulers Of The Deep Live mix 2007-11-11 15:10:21
269 In Sessions 2007-11-11 15:11:13
270 Live at One Big Weekend Sunder 2007-11-11 15:12:05

и вторая:
payedzakaz(id, userid, itemid)
id userid itemid
1 1 270
2 1 269
3 1 268

нужно составить запрос на выборку из первой таблицы, чтоб в payed.itemid отсутствовала запись items.id, т.е. нужны все записи из таблицы items, которые не встречались бы в таблице payed в поле itemid (проверка по полям items.id<>payed.itemid)

по итогам изучения мануала по мускулу пришёл к такому запросу

SELECT mix.id, mix.title, pay.itemid
FROM mixes AS mix, payedzakaz AS pay
WHERE mix.id <> pay.itemid
GROUP BY mix.id

результат запроса след:
id title itemid
251 radioactive 1 270
252 radioactive 2 270
253 270
254 Pacha Winter session vol 4 270
255 270
256 dj superstar mix 270
257 клубничная москва 270
258 Extra presents Happy New Extra 270
259 vinilovie plasky 270
260 give it 270
261 macrovision 270
262 1 year 270
263 270
264 beautiful muzic 270
265 clubbers guide summer mix 1 270
266 clubbers guide summer mix 2 270
267 essential selection live mix 270
268 Rulers Of The Deep Live mix 270
269 In Sessions 270
270 Live at One Big Weekend Sunder 269

всё таки выбирает строки с mix.id (id) встречающимимся в pay.itemid (itemid)

подскажите как правильно составить запрос??



Спустя 1 день, 5 часов, 2 минуты, 59 секунд (13.11.2007 - 21:57) Ghost написал(а):
select * from mixes where id not in (select itemid from payed)

Спустя 14 часов, 55 минут, 59 секунд (14.11.2007 - 12:53) alekz написал(а):
Цитата(Ghost @ 13.11.2007, 18:57) [snapback]29270[/snapback]
select * from mixes where id not in (select itemid from payed)


Спасибо! оказываеца всё просто...


_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.