Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2015, 12:49   #1
ВалекFCRK
Форумчанин
 
Регистрация: 04.06.2011
Сообщений: 120
По умолчанию SELECT запрос

Добрый день.
Есть таблица
id - status
1 - 1
1 - 2
2 - 1
2 - 2
3 - 1
3 - 2
4 - 1

Как видим всех кроме одного id есть 2 статуса. 1 и 2.
Как мне получить тот id, у которого есть статус 1 , но ещё нет статуса 2.
В данном случае это 4.
Не используя процедуры
ВалекFCRK вне форума Ответить с цитированием
Старый 15.05.2015, 12:52   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Код:
SELECT T1.id
  FROM MyTable T1
  WHERE T1.status=1 AND NOT EXISTS(SELECT 1 FROM MyTable T2 WHERE T2.id=T1.id AND T2.status=2)
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.05.2015, 12:56   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну, я бы попытался так:
Код:
select * from Таблица 
  where id not in (select B.id from Таблица B where B.status=2)
Добавлено через минуту
когда я писал свой пример, решения от Аватар ещё не было...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
запрос select deemka777 PHP 14 23.05.2013 13:19
Запрос Select Morgusha SQL, базы данных 26 06.06.2012 14:07
sql запрос select Olegka_ БД в Delphi 11 27.03.2011 16:55
select-запрос из трех таблиц AJlEKCA БД в Delphi 10 19.01.2011 01:38
Запрос вида Insert..Select MySQL Svap SQL, базы данных 3 11.01.2011 19:11