查询一个字符型字段是否包含某些字符常量,可以用“like”来查询但是,反过来呢?查询一个字符型字段是否被包含在另一个字符常量里面,该怎么样做?
举例来说,假设,表“t_www”有两个字段:id , homepage现在,表里面有3条记录,分别是:1 http://www.csdn.net
2 http://www.sina.com.cn
3 http://www.126.com查询“homepage”字段是否包含“csdn”可以用:select * from t_www where homepage like '%csdn%'查询“homepage”字段是否被包含在“http://www.csdn.net/123/abc.htm”里面,怎么写sql语句?说明:这里的“http://www.csdn.net/123/abc.htm”只是举个例子,实际环境中是程序里面的一个参数。
多谢!
举例来说,假设,表“t_www”有两个字段:id , homepage现在,表里面有3条记录,分别是:1 http://www.csdn.net
2 http://www.sina.com.cn
3 http://www.126.com查询“homepage”字段是否包含“csdn”可以用:select * from t_www where homepage like '%csdn%'查询“homepage”字段是否被包含在“http://www.csdn.net/123/abc.htm”里面,怎么写sql语句?说明:这里的“http://www.csdn.net/123/abc.htm”只是举个例子,实际环境中是程序里面的一个参数。
多谢!
解决方案 »
- 在sqlplusw中随便乱写select * from **** 返回结果:2 无论select什么结果都是2..... 即使不存的表也是
- 滁州e8-11套餐88元每月(2M) 想用正则表达式匹配 后面的这个88元档正则表示式怎么写?
- 求教 oracle如何实现增量的表之间导数据?
- 求助一个sql的写法。紧急。。。在线等。先谢过各位。
- 关于Oracle9i多个实例的启动与关闭
- 怎么导数据啊?
- Oracle 9I 在P4上不能安装请问是何原因?
- 使用了DBA Studio的分析向导对一个表进行了分析以后,检索速度明显加快。可是录入新的数据以后,是否需要重新对表进行分析,才能提高检索
- 请教一个sql语句
- oracle 日期相减好像无法得到 number
- 求一SQL写法
- 触发器问题 急!
SQL> SELECT *
2 FROM departments;DEPARTMENT_ID DEPARTMENT_NAME MANAGER_ID LOCATION_ID
------------- ------------------------------ ---------- -----------
10 Administration 200 1700
20 Marketing 201 1800
30 Purchasing 114 1700
40 Human Resources 203 2400
50 Shipping 121 1500
60 IT 103 1400
70 Public Relations 204 2700
80 Sales 145 2500
90 Executive 100 1700
100 Finance 108 1700
110 Accounting 205 1700
120 Treasury 1700
130 Corporate Tax 1700
140 Control And Credit 1700
150 Shareholder Services 1700
160 Benefits 1700
170 Manufacturing 1700
180 Construction 1700
190 Contracting 1700
200 Operations 1700DEPARTMENT_ID DEPARTMENT_NAME MANAGER_ID LOCATION_ID
------------- ------------------------------ ---------- -----------
210 IT Support 1700
220 NOC 1700
230 IT Helpdesk 1700
240 Government Sales 1700
250 Retail Sales 1700
260 Recruiting 1700
270 Payroll 170027 rows selectedSQL> SELECT *
2 FROM departments
3 WHERE department_name LIKE '%ruit%';DEPARTMENT_ID DEPARTMENT_NAME MANAGER_ID LOCATION_ID
------------- ------------------------------ ---------- -----------
260 Recruiting 1700SQL> SELECT *
2 FROM departments
3 WHERE 'aaRecruitingbb' LIKE '%' || department_name || '%';DEPARTMENT_ID DEPARTMENT_NAME MANAGER_ID LOCATION_ID
------------- ------------------------------ ---------- -----------
260 Recruiting 1700SQL>
你可以在程序中将参数传进来,在程序里组织好SQL语句,再提交到Oracle执行即可,或者也可以写一个带参数的返回游标的过程来实现,但基本的还是如上面第三个SQL所示,道理是一样的。SQL> SELECT *
2 FROM departments
3 WHERE 'aaRecruitingbb' LIKE '%' || department_name || '%';
select * from t_www where instr('http://www.csdn.net/123/abc.htm',homepage)>0;
select * from t_www where instr(homepage,“http://www.csdn.net/123/abc.htm”)>0