|
|
|
| Есть такая таблица:
http://www.adammiribyan.com/i/pma-screen-41810.png
Пользователь вводит свое значение area и mysql-запрос должен выбрать из таблицы те поля, значение area которых либо равно значению, введенному пользователем, либо примерно равно ему (но в этом случае — обязательно меньше, а не больше его).
Буду рад любой помощи. | |
|
|
|
|
|
|
|
для: ZC
(18.04.2010 в 20:03)
| | Ну, так и делайте выборку по вашему алгоритму. Например, так:
SELECT * FROM имя_таблицы WHERE area <= значение
P.S. И можете использовать конструкцию BETWEEN для более точного выбора значения. | |
|
|
|
|
|
|
|
для: baston
(18.04.2010 в 20:18)
| |
SELECT *
FROM `warmfloor`
WHERE `area` <=1.6
AND `max_area` =0
ORDER BY `area` DESC
|
Запрос выполняется, но выдает пустой результат. И притом, что если сделать запрос, не включающий условие AND `max_area` =0 — результат выдается и выдается соответствующий.
В чем может быть проблема? | |
|
|
|
|
|
|
|
для: ZC
(18.04.2010 в 20:43)
| | Полагаю, я не ошибусь, если скажу, что числовое значение 0 и значение NULL - отсутствие информации или неопределенное значение, не одно и то же.
У вас в таблице есть данные max_area со значением 0? | |
|
|
|
|
|
|
|
для: baston
(18.04.2010 в 21:04)
| | Запрос и c NULL не выдает никаких результатов. | |
|
|
|
|
|
|
|
для: ZC
(18.04.2010 в 21:16)
| | Ну а как вы выбираете NULL? Покажите... | |
|
|
|
|
|
|
|
для: baston
(18.04.2010 в 21:29)
| |
SELECT *
FROM `warmfloor`
WHERE `area` <= 7
AND `max_area` = NULL
ORDER BY `area` DESC
LIMIT 0 , 30
|
| |
|
|
|
|
|
|
|
для: ZC
(18.04.2010 в 21:42)
| | Неверно.
Для поиска значений с типом данных NULL есть два способа. Попробуйте их узнать. | |
|
|
|
|
|
|
|
для: baston
(18.04.2010 в 21:53)
| | Узнал.
Спасибо большое. | |
|
|
|