![]() |
Модераторы: skyboy |
![]() ![]() ![]() |
|
Acrobat |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 4.4.2007 Репутация: нет Всего: нет |
Приветствую, такая проблема:
есть таблица, допустим товаров, у каждого товара есть статус от 1 до 5. т.е. мы получаем такую таблицу id, name, status как мне составить запрос, чтобы выбрать количество всех товаров с группировкой по статусу так, чтобы если у меня нет товаров со статусом 2 запрос вернул количество 0? т.е. в конечном итоге должно получиться что то вроде: со статусом 1 - [количество] со статусом 2 - [количество] .... со статусом 5 - [количество] Это нужно для статистики. Запросом:
у меня не получается... Заранее спасибо за помощь=) ЗЫ: среда программирования php |
|||
|
||||
Magnifico |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 418 Регистрация: 23.1.2008 Где: Московская област ь Репутация: 4 Всего: 17 |
а как изходя из твоей таблицы( id, name, status)
может существовать запись с со стаусом 2 но без id и name т.е
есть подозрения что у тебя там более сложная структура таблиц Это сообщение отредактировал(а) Magnifico - 13.5.2008, 14:57 -------------------- Всё в порядке - спасибо зарядке ! |
|||
|
||||
Magnifico |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 418 Регистрация: 23.1.2008 Где: Московская област ь Репутация: 4 Всего: 17 |
-------------------- Всё в порядке - спасибо зарядке ! |
|||
|
||||
Acrobat |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 4.4.2007 Репутация: нет Всего: нет |
нет, мне нужно только показать все статусы и сколько по ним данных, например:
со статусом 1 - [количество] со статусом 2 - [количество] .... со статусом 5 - [количество] Имена не нужны, зря конечно я их в пример таблицы включил. |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 45 Всего: 454 |
Само собой если в таблице какого-то статуса ВООБЩЕ нет - его не будет и в результирущей выборке. Правильно же - создать таблицу статусов, в которой содержатся все возможные значения. И джойнить её вместо подзапроса. PS. Кавычки расставляй сам. Это сообщение отредактировал(а) Akina - 13.5.2008, 20:17 -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
Magnifico |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 418 Регистрация: 23.1.2008 Где: Московская област ь Репутация: 4 Всего: 17 |
-------------------- Всё в порядке - спасибо зарядке ! |
||||
|
|||||
Acrobat |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 4.4.2007 Репутация: нет Всего: нет |
Magnifico, а не слишком много запросов получилось?
Akina, чем отличается твой последний запрос от, например моего?
|
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 45 Всего: 454 |
Независимостью от диалекта. ![]() -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
Deniz |
|
||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 6 Всего: 44 |
Magnifico, что-то сложный запрос получился, может лучше
Добавлено через 52 секунды А вообще
-------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
||||
|
|||||
Acrobat |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 4.4.2007 Репутация: нет Всего: нет |
Всем спасибо за ответы, многое понял)
|
|||
|
||||
Magnifico |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 418 Регистрация: 23.1.2008 Где: Московская област ь Репутация: 4 Всего: 17 |
Да слишком - но это то что первое в голову пришло (а для оптимизаци нужно время ) тем более DENIZ тебе уже дал более оптимизированный запрос Deniz +1 -------------------- Всё в порядке - спасибо зарядке ! |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Составление SQL-запросов | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |