2016-01-11 2 views
2

У меня есть небольшая таблица в MySQL следующим образом:Как получить несколько строк в одном запросе?

pid pName pPrice 
    1 TBall 100.00 
    2 MBall 200.00 
    3 TJers 250.00 
    4 MJers 275.00 

Я хочу, чтобы получить несколько строк в результате в одном запросе:

Select * from <tablename> where pName='Tball' and 'MBall'; 

(Этот код является неправильным, Я хочу правильно решение, которое является похож на это)

запрос должен дать следующий результат:.

pid pName pPrice 
1 TBall 100.00 
2 MBall 200.00 
+0

'... WHERE pName = 'Tball' ИЛИ ​​pName = 'MBall';' – aioobe

+0

Спасибо, это сработало – Manu

+0

Good @aioobe, well done –

ответ

4

вопрос будет:

  • Вопрос «Что я сделал, чтобы избежать всех строк?»

  • A. Вы добавили сдерживающее WHERE пункт

  • Q. "Как сделать это ле ограничительной?"

  • A. Сделать ограничение менее ограничительным.

  • Q. «Есть ли у вас примеры того, как я могу это сделать?»

  • A. Ну да. Существует синтаксис выражения для предложения where. Среди других существуют логические операторы (AND, OR, NOT), вы можете проверить равенства (=, IS NULL). На многих диалектах SQL есть дополнительные операторы (BETWEEN, LIKE) и, наконец, все должны иметь оператора IN.

Все операторы могут быть объединены, и суб-выражения могут быть заключены в круглые скобки , как вы бы отличить 3 * (7 + 5) от (3 * 7) + 5.

Здесь вы могли бы просто использовать OR логический оператор:

SELECT * FROM <tablename> WHERE (pName = 'TBall') OR (pName = 'MBall'); 

Или, вы можете использовать IN:

SELECT * FROM <tablename> WHERE pName IN ('TBall','MBall'); 

Или, вы можете использовать даже LIKE для случая использования:

SELECT * FROM <tablename> WHERE pName LIKE '%Ball'; 
+0

Downvoter, позаботьтесь, чтобы объяснить? – Magisch

Смежные вопросы