如何在存储过程里写模糊查询

 我来答
wangzhiqing999
2011-01-21 · TA获得超过1.6万个赞
知道大有可为答主
回答量:7048
采纳率:100%
帮助的人:3294万
展开全部
存储过程里面可以写 SQL 语句, SQL 语句可以模糊查询。 So 存储过程 就这么写模糊查询 。

如果不是使用SQL语句的, 而是一个字符串变量的模糊查询的话。

使用字符串搜索的函数来处理。

Oracle
INSTR
4参数:
被检索字符串
检索的字符串
哪里开始(默认1)
找第几个(默认1)

SQL> SELECT
2 INSTR('easy come, easy go, so easy!', 'easy') A,
3 INSTR('easy come, easy go, so easy!', 'easy', 3) B,
4 INSTR('easy come, easy go, so easy!', 'easy', 3, 2) C
5 FROM
6 dual;

A B C
---------- ---------- ----------
1 12 24

SQL Server
CHARINDEX
3参数
检索字符串
被检索字符串
哪里开始(默认1)
1> SELECT
2> CHARINDEX('easy', 'easy come, easy go, so easy!') A,
3> CHARINDEX('easy', 'easy come, easy go, so easy!', 3) B
4> go
A B
----------- -----------
1 12

MySQL
INSTR
MySQL INSTR只支持从第一个字符开始找第一个
LOCATE支持从指定位置开始找

mysql> SELECT
-> INSTR('easy come, easy go, so easy!', 'easy') A
-> //
+---+
| A |
+---+
| 1 |
+---+
1 row in set (0.00 sec)

mysql> SELECT
-> LOCATE ('easy', 'easy come, easy go, so easy!', 2) A
-> //
+----+
| A |
+----+
| 12 |
+----+
1 row in set (0.00 sec)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式