Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Сложный запрос к таблице
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Сложный запрос к таблице

Страниц (1): [1]
 

1. mihon_kri - 29 Января, 2015 - 16:16:55 - перейти к сообщению
Всем добрый день!
Проблема в следующем: в базе есть следующая таблица
id №заказа товар кол-во
1 112 Товар1 1
2 112 Товар2 2
3 111 Товар3 0
4 111 Товар1 1
5 121 товар1 1
6 121 Товар2 5
7 121 Товар3 7
8 124 Товар1 2
9 124 товар2 0
10 124 товар3 4

Нужно сделать выборку только тех заказов, в которых нет нулевых позиций в поле кол-во. То есть результатом запроса должны быть все позиции заказов, где количество не нулевое. Вот такой результат:

id №заказа товар кол-во
1 112 Товар1 1
2 112 Товар2 2
5 121 товар1 1
6 121 Товар2 5
7 121 Товар3 7
2. Мелкий - 29 Января, 2015 - 16:57:57 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT /**/ FROM `tbl` AS `outer` WHERE NOT EXISTS (SELECT 1 FROM `tbl` AS `inner` WHERE OUTER.order_id=INNER.order_id AND items_count=0)
3. GoDr - 29 Января, 2015 - 17:12:03 - перейти к сообщению
Мелкий, не понял, а что так сложно?
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM `table` WHERE `кол-во` !=0
4. skiphog - 29 Января, 2015 - 17:13:35 - перейти к сообщению
GoDr пишет:
Мелкий, не понял, а что так сложно?


Ну топик же называется Сложный запрос к таблице Радость
5. Мелкий - 29 Января, 2015 - 17:25:28 - перейти к сообщению
GoDr пишет:
Мелкий, не понял, а что так сложно?

В выходном наборе данной задачи вообще отсутствуют 111 и 124 заказы. Очевидно потому, что они содержат запись с нулём.
6. GoDr - 29 Января, 2015 - 18:05:32 - перейти к сообщению
я прочитал вопрос иначе

То есть результатом запроса должны быть все позиции заказов, где количество не нулевое Радость

 

Powered by ExBB FM 1.0 RC1