-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


Сложное ветвление в запросах Как реализовать

Среда, 30 Сентября 2015 г. 14:52 + в цитатник
2 таблицы могут соединяться в запрос
 SELECT RptSheet.P21, RptSheet.P22, RptSheet.P27, RptSheet2.P14, RptSheet2.P15
FROM RptSheet LEFT JOIN RptSheet2 ON RptSheet.P5 = RptSheet2.P4;

результат см рисунок во вложении. Нужно сделать выборку чтобы в ней было вычисляемое поле которое выдавало
по каждой фирме (столбец P22) либо столбец P14 при условии что среди принадлежащих ей строк есть строка равная PBE в противном случае либо столбец P14 если P27=ПР иначе пустую строку .
Писать типа
SELECT Iif(EXISTS(SELECT * FROM RptSheet2 WHERE P15='PBE'),P14, ... )
не проканывает
SELECT DISTINCT RptSheet.P27 as r1, RptSheet.P22 as r2, IIf(RptSheet2.P15='PBE',RptSheet2.P14,IIf(RptSheet.P27='ПР' OR RptSheet.P27='М','Куплен','')) AS State
FROM RptSheet INNER JOIN RptSheet2 ON RptSheet.P5=RptSheet2.P4;
тоже мало

http://www.sql.ru/forum/1177819/slozhnoe-vetvlenie-v-zaprosah-kak-realizovat


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку