2014-02-08 365 views
0

是否可以在兩個LIKE子句之間使用MySQL BETWEEN子句?在兩個LIKE子句之間使用BETWEEN LIKE

說,我想搜索他的名字開始與A,

SELECT * FROM my_table WHERE name_column LIKE "A%" 

,如果我想搜索他的名字開始爲J,

SELECT * FROM my_table WHERE name_column LIKE "F%" 

現在,如果我想搜索他的名字開始AJ,這是可能的,

SELECT * FROM my_table WHERE name_column BETWEEN LIKE "A%" AND LIKE "%F" 

請幫我找到一些簡單的解決方案。

回答

1

匹配範圍時你並不需要「%」,因爲它是在訂貨

SELECT * FROM my_table WHERE name_column >= 'A' AND name_column < 'K'; 
+0

非常感謝。還有一件事,我怎麼能GROUP BY呢?我的意思是,如果我想看看有多少人的名字以「A」和「B」開頭,等等...... – Shuvo

+0

@Shuvo,另一個問題值得另一篇文章:)這是怎麼在StackOverflow .. –

+0

@Shuvo - 奧雷爾是正確的。但[請在此](http://www.sqlfiddle.com/#!2/8e7cf/2) – StuartLC

1

在這種情況下,可以Regular Expression得心應手

SELECT * FROM my_table WHERE name_column RLIKE "^[A-J].*$"; 
-3

MySQL命令暗示這裏

$ qry = select * from my_table其中name_column介於'%$ A%'和'%$ J%'之間;

讓它不是

+0

請記住以英文發帖。 – DaImTo