powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выборка из таблицы по нескольким условиям
6 сообщений из 6, страница 1 из 1
Выборка из таблицы по нескольким условиям
    #38531785
zar-gsm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток, прошу помощи

SELECT COUNT(`flag_is_not_executed`)
FROM `photographer_executed_demands`
WHERE `flag_executed` <>1
AND id_user = '303658'
AND `flag_is_not_executed` =1
UNION
SELECT COUNT( `flag_expired` )
FROM `photographer_executed_demands`
WHERE `flag_executed` <>1
AND id_user = '303658'
AND `flag_expired` =1
UNION
SELECT COUNT(`flag_in_processing`)
FROM `photographer_executed_demands`
WHERE `flag_executed` <>1
AND id_user = '303658'
AND `flag_in_processing` =1

Записи выводятся в столбец и если по 1 запросу ничего не найдено то эта строка опускается т.е. должно быть
0
1
0
а выводит
1
0

Как сделать что если записей таких нет в одном из 3 запросов то в результатах указывалось 0, а в идеале результат выводить в столбцах но не могу сообразить как составить запрос...
...
Рейтинг: 0 / 0
Выборка из таблицы по нескольким условиям
    #38531793
Cygapb-007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
union подразумевает distinct

чтобы избавиться от этого, нужно писать union all

но и тут порядок строк (0,1,0) или (1,0,0) или остальные варианты - не гарантирован
...
Рейтинг: 0 / 0
Выборка из таблицы по нескольким условиям
    #38531799
zar-gsm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cygapb-007,

А как можно подругому составить запрос?
...
Рейтинг: 0 / 0
Выборка из таблицы по нескольким условиям
    #38531832
Cygapb-007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
особо не заморачиваясь - например, так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
SELECT 1 id, COUNT(`flag_is_not_executed`) qty
FROM `photographer_executed_demands`
WHERE `flag_executed` <> 1 AND id_user = '303658' AND `flag_is_not_executed` = 1

UNION ALL

SELECT 2, COUNT(`flag_expired`)
FROM `photographer_executed_demands`
WHERE `flag_executed` <> 1 AND id_user = '303658' AND `flag_expired` = 1

UNION ALL

SELECT 3, COUNT(`flag_in_processing`)
FROM `photographer_executed_demands`
WHERE `flag_executed` <> 1 AND id_user = '303658' AND `flag_in_processing` = 1

ORDER BY id
...
Рейтинг: 0 / 0
Выборка из таблицы по нескольким условиям
    #38531853
zar-gsm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cygapb-007,

Спасибо за помощь... куда пивка выслать?
...
Рейтинг: 0 / 0
Выборка из таблицы по нескольким условиям
    #38531854
Cygapb-007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если можно результат в одну строку, то еще проще:
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT 
   SUM(`flag_is_not_executed` = 1) `qty_is_not_executed`,
   SUM(`flag_expired` = 1) `qty_expired`,
   SUM(`flag_in_processing` = 1) `qty_in_processing`,
FROM `photographer_executed_demands`
WHERE `flag_executed` <> 1 AND id_user = '303658' AND 
  (`flag_is_not_executed` = 1 OR `flag_expired` = 1 OR `flag_in_processing` = 1);
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выборка из таблицы по нескольким условиям
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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