mysql中命令的%位置之间的差异

时间:2014-02-22 02:23:20

标签: mysql database phpmyadmin

mysql

中类似命令的区别是什么
SELECT * FROM dbname WHERE filedname LIKE '12%';

SELECT * FROM dbname WHERE filedname LIKE '%12';

4 个答案:

答案 0 :(得分:1)

百分比是一个匹配任何内容的通配符。所以'12%'将匹配'12abc',但它不匹配'abc12'。虽然'%12'会做相反的事情。

答案 1 :(得分:0)

in

  

SELECT * FROM dbname WHERE filedname LIKE '12%';

你搜索以12开头的域名值 喜欢:“12whatever” 并在

  

SELECT * FROM dbname WHERE filedname LIKE'%12';

你搜索以12结尾的域名值 喜欢:“什么都有12”

答案 2 :(得分:0)

%符号表示任何东西都可以在那一侧并且它将匹配。

例如,'12%'匹配'12345'或'12只狗',或'%12'匹配'2012'或'我12'。

答案 3 :(得分:0)

LIKE%符号一起使用时,它将像元字符搜索一样工作。 百分号通配符可用于表示值匹配中的任意数量的字符。

例如列出产品名称以“计算机案例”字样结尾的所有行:

SELECT * FROM product WHERE prod_name LIKE '% Computer Case';
+-----------+--------------------+-------------------+
| prod_code | prod_name          | prod_desc         |
+-----------+--------------------+-------------------+
|        11 | Grey Computer Case | ATX PC CASE       |
|        12 | Gray Computer Case | ATX PC CASE (USA) |
+-----------+--------------------+-------------------+

或者,可以将通配符放在值的末尾,例如,检索由虚构的WildTech Corporation制造的库存中的所有商品:

SELECT * FROM product WHERE prod_name LIKE 'WildTech%';
+-----------+--------------------------+------------------------+
| prod_code | prod_name                | prod_desc              |
+-----------+--------------------------+------------------------+
|         3 | WildTech 250Gb 1700      | SATA Disk Drive        |
|        13 | WildTech Mouse (Optical) | Wireless Optical Mouse |
+-----------+--------------------------+------------------------+
2 rows in set (0.00 sec)