2015-04-23 30 views
0

我是新來的Mysql &條款有在哪裏我目前正在獲取數據如何使用或並且在mysql中

SELECT * FROM tablename WHERE name='$user' AND date='$selecteddate' 

現在我想一個表中添加1更多命名列STATUS_ID在這裏我想從以價值選擇,即1或2

我嘗試這個查詢

SELECT * FROM tablename WHERE (name='Ankit') AND (date='2015-04-23') AND (status_id='1' OR status_id='2') 

,但沒有成功。

請幫忙。

+1

是否顯示任何錯誤 –

+0

status_id列的數據類型是什麼? – SMA

+0

似乎是查詢是好的。你期望什麼和你得到什麼? – Prasad

回答

1

那麼,你只需要或者子句所涉及的元素在括號內就是 。

順便說一下(您可以使用AND/OR的優先順序),它們不是「需要」的,但我會說這是可讀性的最佳方式。

如果STATUS_ID的數據類型爲int,你不需要' '約1和2

SELECT * 
FROM tablename 
WHERE name='Ankit' 
AND date='2015-04-23' 
AND (status_id=1 OR status_id=2) 

順便說一句,在這種情況下,你可以使用IN子句

AND status_id in (1, 2) 
+0

謝謝!!!現在工作正常。 :) –

1

像這樣的事情

"SELECT * FROM tablename 
WHERE name='Ankit' 
AND date='2015-04-23' 
AND (status_id='1' OR status_id='2')"; 
0

嘗試使用IN

相關問題