Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2010, 12:23   #1
Che Guevara
Пользователь
 
Аватар для Che Guevara
 
Регистрация: 27.07.2010
Сообщений: 91
Вопрос Диапазон данных

Есть таблица мускула. В ней хранятся данные о товаре, его типе и цене.
ПХП делает запрос в эту таблицу и указывает "извращённое" количество критериев. Вопрос - как организовать поиск товара по диапазону цены (от-до).
Я попробовал сделать это с помощью between:

Код:
SELECT * FROM rent WHERE type='phone' AND vendor='nokia' AND type BETWEEN 'single' AND 'double' AND price BETWEEN 100 AND 300;
Che Guevara вне форума Ответить с цитированием
Старый 25.11.2010, 13:11   #2
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
Я попробовал сделать это с помощью between:
Работает запрос?
Имхо, лучше вместо
Код:
SELECT * FROM rent WHERE type='phone' AND vendor='nokia' AND type BETWEEN 'single' AND 'double' AND price BETWEEN 100 AND 300;
заюзать
Код:
SELECT * FROM rent WHERE type='phone' AND vendor='nokia' AND type in( 'single' ,'double') AND price BETWEEN 100 AND 300;
ssdm вне форума Ответить с цитированием
Старый 25.11.2010, 13:54   #3
Che Guevara
Пользователь
 
Аватар для Che Guevara
 
Регистрация: 27.07.2010
Сообщений: 91
Счастье

Цитата:
заюзать
Код:

SELECT * FROM rent WHERE type='phone' AND vendor='nokia' AND type in( 'single' ,'double') AND price BETWEEN 100 AND 300;
Спасибо. А что если вместо type in( 'single' ,'double') у меня будет числовые типы. Что то вроде
Код:
SELECT * FROM rent WHERE type='phone' AND vendor='nokia' AND type in( 111 , 222) AND price BETWEEN 100 AND 300;
При этом числа 111 и 222 это диапазон!

Последний раз редактировалось Che Guevara; 25.11.2010 в 14:24.
Che Guevara вне форума Ответить с цитированием
Старый 25.11.2010, 14:44   #4
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
При этом числа 111 и 222 это диапазон!
Числа между 111 и 222 - это диапозон?
Тогда зачем писали в начале темы
Цитата:
type BETWEEN 'single' AND 'double'
ssdm вне форума Ответить с цитированием
Старый 25.11.2010, 15:49   #5
Che Guevara
Пользователь
 
Аватар для Che Guevara
 
Регистрация: 27.07.2010
Сообщений: 91
По умолчанию

Цитата:
Тогда зачем писали в начале темы
Цитата:
type BETWEEN 'single' AND 'double'
Пардон! Виноват. Многозадачность...

Но в посте #3 я писал:
Цитата:
Спасибо. А что если вместо type in( 'single' ,'double') у меня будет числовые типы. Что то вроде
Код:


SELECT * FROM rent WHERE type='phone' AND vendor='nokia' AND type in( 111 , 222) AND price BETWEEN 100 AND 300;

При этом числа 111 и 222 это диапазон!
Вообще задача сравнить числа. В таком случае запрос ИМХО приобретёт такую форму:
Код:
SELECT * FROM rent WHERE type='phone' AND vendor='nokia' AND type BETWEEN 111 and 222 AND price BETWEEN 100 AND 300;
Che Guevara вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление данных в диапазон ячеек denneo Microsoft Office Excel 1 08.02.2009 09:05
Ссылка на динамический диапазон данных NikolayGVB Microsoft Office Excel 2 13.01.2009 18:00
Диапазон limon Помощь студентам 5 06.09.2008 21:44
Как написать в коде чтобы диапазон А копировался как значение в диапазон В. Dorvir Microsoft Office Excel 12 23.05.2008 22:11