| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Базы Данных > Как выбрать из базы MySQL значения по 2 параметрам |
| Автор: vovarich 20.1.2014, 01:03 |
| Столкнулся со следующей проблемой. Существует таблица MySQL из которой нужно сделать выборку по 2 -м столбцам. Тоесть цикл должен выбрать все значения где categ1= 'новинки' (это 1 столбец) и categ2= 'мультики' (это 2 столбец) Вот такой запрос делаю для выборки по одному столбцу, $result=mysql_query("select * from product WHERE categ1= 'новинки' order by position DESC"); а как сделать выборку по 2-м столбцам одновременно - не соображу. Мне нужно чтобы выбрало все товары в которых categ1= 'новинки' и плюс еще и все товары в которых categ2= 'мультики' Помогите пожалуйста. |
| Автор: igorold 20.1.2014, 06:15 | ||
Так и пиши:
Не понял в чем проблема. Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Как-выбрать-из-базы-MySQL-значения-по-2-параметрам-id52dc4c4bae2015e8508b4567#findElement_E7045_52dc94beae2015770e175f13_0 |
| Автор: vovarich 20.1.2014, 10:37 | ||||
В этом случае выведет только те значения, где товар отвечает двум условиям "новинки" и "мультики". А мне нужно чтобы выбрало все товары в которых categ1= 'новинки' и плюс еще и все товары в которых categ2= 'мультики' |
| Автор: vovarich 20.1.2014, 12:56 |
| Всем спасибо за помощь. Вопрос решен с помощью оператора OR. По своей неопытности я думал что этот оператор выбирает "или то или то", а получается, что "и то и то" |
| Автор: igorold 21.1.2014, 05:55 | ||
Вы же сами написали -
Это и есть AND. Значит надо было и вопрос формулировать так: где categ1= 'новинки' или categ2= 'мультики' Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Как-выбрать-из-базы-MySQL-значения-по-2-параметрам-id52dc4c4bae2015e8508b4567#findElement_E7045_52dde19dae20150a5a1760d8_0 |
| Автор: vovarich 6.2.2014, 00:06 |
| Может подскажите почему из колонки categ2 не выбирает значения, а только из первых двух. Может быть оператор OR нелья использовать дважды? И как это обойти. $res=mysql_query("select * from product WHERE categ= '$cat' OR categ1= '$cat' OR categ2= '$cat' order by position DESC"); |