powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Нужно чтобы выводились результаты группировки даже если условие не соблюдено
8 сообщений из 8, страница 1 из 1
Нужно чтобы выводились результаты группировки даже если условие не соблюдено
    #39790538
Aleksy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблица Accounts, имена которых нужно вывести в любом случае даже если нет данных в базе или условие не соблюдено.

Accounts связана с таблицей Transes.

Вот запрос

Код: sql
1.
2.
3.
4.
5.
SELECT        tblAccounts.Id, tblAccounts.Name
FROM           tblAccounts LEFT OUTER JOIN tblTranses ON tblAccounts.Id = tblTranses.AccountId
WHERE        (tblTranses.TransDate <= CONVERT(DATETIME, '2019-03-22 00:00:00', 102)) OR
                         (tblTranses.TransDate IS NULL)
GROUP BY tblAccounts.Id, tblAccounts.Name



Если в базе вообще нет записей то запрос выводит результаты 2 Account.
Если в базе если запись например 20 числа, то запрос будет выводить результаты когда условие даты будет После 20 числа, если условие будет До то ни одного Account не выводится... как сделать что бы Accounts выводились всегда?
...
Рейтинг: 0 / 0
Нужно чтобы выводились результаты группировки даже если условие не соблюдено
    #39790543
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksy,

перенеси условия из where в on
...
Рейтинг: 0 / 0
Нужно чтобы выводились результаты группировки даже если условие не соблюдено
    #39790545
Aleksy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
court,

Спасибо, понял!
...
Рейтинг: 0 / 0
Нужно чтобы выводились результаты группировки даже если условие не соблюдено
    #39791585
Aleksy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А что если в в таблице Transes есть записи без Accounts.Id, типа как вывести в этом же запросе строку "без счета"?
...
Рейтинг: 0 / 0
Нужно чтобы выводились результаты группировки даже если условие не соблюдено
    #39791747
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AleksyА что если в в таблице Transes есть записи без Accounts.Id, типа как вывести в этом же запросе строку "без счета"?Тогда нужно вместо LEFT JOIN использовать FULL JOIN
...
Рейтинг: 0 / 0
Нужно чтобы выводились результаты группировки даже если условие не соблюдено
    #39798978
Aleksy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так все получается, спасибо!

Но теперь с группировкой выбираются все счета, по каждой записи для счета, а суммы без счетов выводятся общей суммой и само называние счета пустое, как сделать что бы выводилось что-то типа "без счета"?
...
Рейтинг: 0 / 0
Нужно чтобы выводились результаты группировки даже если условие не соблюдено
    #39798999
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksyа суммы без счетов выводятся общей суммой и само называние счета пустое, как сделать что бы выводилось что-то типа "без счета"?Написать nullif(tblAccounts.Name, 'без счета')
...
Рейтинг: 0 / 0
Нужно чтобы выводились результаты группировки даже если условие не соблюдено
    #39799297
Фотография Ennor Tiegael
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgAleksyа суммы без счетов выводятся общей суммой и само называние счета пустое, как сделать что бы выводилось что-то типа "без счета"?Написать nullif(tblAccounts.Name, 'без счета')ISNULL только, а не NULLIF, нет?
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Нужно чтобы выводились результаты группировки даже если условие не соблюдено
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]