Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.12;
Скачать: CL | DM;

Вниз

SQL запросик   Найти похожие ветки 

 
AndbyOne ©   (2002-08-22 10:19) [0]

Есть 2 таблицы:
PERS: и PERSLOG:
BKEY SDATETIME
RKEY BKEY
PKEY RKEY
PKEY
Мне надо отобрать те записи из PERS, которых нет в PERSLOG, т.е. те PERS.BKEY которых нет в PERSLOG.BKEY;
Я делаю, так:
SELECT
DISTINCT PERS.*
FROM
PERSLOG,
PERS
WHERE PERS.BRIGADEKEY != PERSLOG.BRIGADEKEY
ORDER BY PERS.BRIGADEKEY
и он отбирает все записи, вообще все. ЧТо делать?


 
SaS13 ©   (2002-08-22 10:23) [1]

SELECT DISTINCT *
FROM PERS
WHERE BRIGADEKEY NOT IN (SELECT BRIGADEKEY FROM PERSLOG)
ORDER BY BRIGADEKEY


 
Desdechado ©   (2002-08-22 10:29) [2]

учить матчасть!
У тебя для каждой записи из PERS выбираются все записи из PERSLOG, у которых ключ не совпал. Потом применяется DISTINCT, т.е. получается по одной такой записи. Итог - все записи из PERSLOG

select P.* from Pers P
where not exists( SELECT L.sdatetime FROM Perslog L
WHERE L.bkey = P.bkey)

или ХП



Страницы: 1 вся ветка

Текущий архив: 2002.09.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
14-35890
RangerBetta
2002-08-19 10:18
2002.09.12
В чем проекторовать БД InterBase


4-35951
MJH
2002-07-19 19:24
2002.09.12
Хинты Win2k из трея


3-35604
dron1
2002-08-22 15:20
2002.09.12
создание алиаса программно


3-35562
Vlad50
2002-08-21 17:49
2002.09.12
Проблемы с БД при работе с CD


7-35923
anton_private
2002-06-07 15:57
2002.09.12
Как зарегистрить ActiveX компонет в runtime?