我有一個名爲optima的表,有幾個字段,我需要做一個查詢,將返回結果field1 = a
和field2 = b
。MySQL:如何從兩個領域進行搜索?
表例如
F1 F2
_____
a z
v a
a b
b a
結果必然是:
a b
我試圖讓查詢像
SELECT * FROM `optima` WHERE `F1` LIKE 'a' AND `F2` LIKE 'b';
但它返回我什麼。
我有一個名爲optima的表,有幾個字段,我需要做一個查詢,將返回結果field1 = a
和field2 = b
。MySQL:如何從兩個領域進行搜索?
表例如
F1 F2
_____
a z
v a
a b
b a
結果必然是:
a b
我試圖讓查詢像
SELECT * FROM `optima` WHERE `F1` LIKE 'a' AND `F2` LIKE 'b';
但它返回我什麼。
精確匹配,使用=
操作,例如:
select *
from `optima`
where `F1` = 'a' and `F2` = 'b';
你有背痛嗎? – Bohemian 2012-04-23 13:58:29
我認爲在這種情況下'LIKE'更準確,因爲它按字符進行比較並考慮尾隨空格。雖然,'='可能會更好,因爲尾隨空格將被忽略,這可能是問題所在。 – 2012-04-23 13:59:33
以及如果我需要搜索類似這樣的內容:'a,b%'與'a,bc'中的表?所以只需使用'like',而不是'='? – 2012-04-23 14:07:31
你真的需要學習SQL基礎知識。 – 2012-04-23 13:46:59
F1和F2的列類型(和長度)是什麼? – 2012-04-23 14:01:26
反引號或反引號偶爾是必要的,但你應該避免他們不在的地方。表名不需要反引號;列名可能需要反引號的唯一原因是因爲它們是大寫的,並且在創建表時被反引號括起來。 – 2012-04-23 14:02:28