我的查询的MYSQL通配符问题

时间:2015-10-30 20:18:47

标签: mysql sql wildcard

我遇到了mysql通配符的问题。 给出如下表:

id | name
--------------
1  | Marcel
2  | Marcel2
3  | Marcel3

现在我需要知道有多少名称是Marcel的名字在表中。

SELECT id FROM 'users' WHERE name LIKE 'Marcel#' 
--gives me **0** results

SELECT id FROM 'users' WHERE name LIKE 'Marcel_' 
-- gives me just **1** result (**3** would be the solution)

我可以用什么查询来确定名称+ nr在表格中的频率?

2 个答案:

答案 0 :(得分:3)

使用%通配符:

SELECT id FROM `users` WHERE name LIKE 'Marcel%'

SqlFiddleDemo

%   A substitute for zero or more characters 
_   A substitute for a single character

所以你的:

  

SELECT id FROM' users'名字喜欢' Marcel _' 只给我一个   结果(3将是解决方案)

可能是错误的,请参阅: SqlFiddleDemo ,因为它会为您提供Marcel2Marcel3(除非您有尾随的空格,我在你提供的例子中看不到)

答案 1 :(得分:0)

像'%Marcel%'这样的名字应该适合你。