SQL LIKE子句

来源:互联网 发布:java 敏捷开发框架 编辑:程序博客网 时间:2024/05/16 19:17

LIKE子句中使用的SQL比较类似的值,使用通配符操作符的值。有两个通配符与LIKE运算符一起使用:

  • 百分号 (%)

  • 下划线 (_)

百分号表示零个,一个或多个字符。下划线代表一个单独的数字或字符。可以将符号进行组合使用。

语法:

%和_的基本语法如下:

SELECT FROM table_nameWHERE column LIKE 'XXXX%'or SELECT FROM table_nameWHERE column LIKE '%XXXX%'orSELECT FROM table_nameWHERE column LIKE 'XXXX_'orSELECT FROM table_nameWHERE column LIKE '_XXXX'orSELECT FROM table_nameWHERE column LIKE '_XXXX_'

可以将N多的条件下使用AND或OR运算。这里XXXX可以是任何数字小或字符串值。

例子:

这里是一些例子来说明,其中部分具有不同LIKE'%'和'_'操作符的子句:

声明描述WHERE SALARY LIKE '200%'查找的值开始200WHERE SALARY LIKE '%200%'查找拥有200在任何位置的任何值WHERE SALARY LIKE '_00%'查找具有在所述第二位置和第三位置00的任何值WHERE SALARY LIKE '2_%_%'查找的任何值2开始,至少有3个字符的长度WHERE SALARY LIKE '%2'查找任何值函有2的WHERE SALARY LIKE '_2%3'带有3查找有一个2的任何值,在第二位置和结束WHERE SALARY LIKE '2___3'查找一个五位数中的任何值,从2开始和结束3

让我们以一个真实的例子,考虑CUSTOMERS表中有以下记录:

+----+----------+-----+-----------+----------+| ID | NAME     | AGE | ADDRESS   | SALARY   |+----+----------+-----+-----------+----------+|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 ||  2 | Khilan   |  25 | Delhi     |  1500.00 ||  3 | kaushik  |  23 | Kota      |  2000.00 ||  4 | Chaitali |  25 | Mumbai    |  6500.00 ||  5 | Hardik   |  27 | Bhopal    |  8500.00 ||  6 | Komal    |  22 | MP        |  4500.00 ||  7 | Muffy    |  24 | Indore    | 10000.00 |+----+----------+-----+-----------+----------+

以下是一个例子,它会显示从CUSTOMERS表中所有薪金是200的记录:

SQL> SELECT * FROM CUSTOMERSWHERE SALARY LIKE '200%';

这将产生以下结果:

+----+----------+-----+-----------+----------+| ID | NAME     | AGE | ADDRESS   | SALARY   |+----+----------+-----+-----------+----------+|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 ||  3 | kaushik  |  23 | Kota      |  2000.00 |+----+----------+-----+-----------+----------+
0 0