Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
19.01.2020, 21:26
|
|||
---|---|---|---|
|
|||
Помогите решить задачку JOIN из двух таблиц |
|||
#18+
Есть две таблицы. 1: create table t_licenses ( license_id int, stock_id int, license_desc varchar(100), valid_from date, valid_to date license_id stock_id license_desc valid_from valid_to 1 1 Лицензия на продажу Алкоголя №123 2019-01-01 2019-06-01 2 1 Лицензия на продажу Табака №555 2019-01-01 2020-12-31 3 2 Лицензия на продажу Алкоголя №647 2019-01-01 2019-06-01 4 3 Лицензия на продажу Алкоголя №111 2019-01-01 2019-12-31 5 4 Лицензия на продажу Табака №5252 2019-01-01 2019-02-01 6 5 Лицензия на продажу Алкоголя №1 2019-01-01 2019-12-31 7 5 Лицензия на продажу Алкоголя №1 2020-01-01 2020-12-31 ) 2: create table t_stocks ( stock_id int, stock_name varchar(100), open_dt date, close_dt date ) stock_id stock_name open_dt close_dt 1 Алакуртти 2018-01-01 2019-06-01 2 Вавил 2018-01-01 NULL 3 Воскресенск 2018-01-01 NULL 4 Гарант 2018-01-01 2019-01-01 5 Континент 2018-01-01 2018-01-01 6 Мираж 2018-01-01 NULL 7 Пепяка 2018-01-01 NULL 8 Планерная 2018-01-01 2019-12-01 --1. Получить список открытых магазинов и для каждого магазина в отдельном поле показать наличие действующей лицензии. Пишу запрос: SELECT stock_name, COUNT(Valid_to) AS license FROM t_stocks S CROSS JOIN t_licenses L WHERE S.stock_id = L.stock_id AND Valid_to > '19.01.2020' AND close_dt IS NULL GROUP BY stock_name хочу в отдельной колонкой вывести значение, которые будет либо NULL либо 1. Проблема в том что если данных нет, то и нет пустых значений, т.е. в созданной колонке COUNT(Valid_to) AS license нет значения NULL. просто пустые данные, ПОЧЕМУ?? stock_name license ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.01.2020, 21:46
|
|||
---|---|---|---|
Помогите решить задачку JOIN из двух таблиц |
|||
#18+
from t_stocks S left join t_licenses L on S.stock_id = L.stock_id AND L.Valid_to > '20200119' ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=46&mobile=1&tid=1686635]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
81ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
others: | 325ms |
total: | 485ms |
0 / 0 |