请教一个关于SQL语句 like 用法的问题

[复制链接]
查看11 | 回复7 | 2011-8-26 02:55:58 | 显示全部楼层 |阅读模式
select*fromCSAJZT,CSDYDJwhereCSDYDJ.产权证号like(selectCSAJZT.产权证号fromCSAJZTWHERE受理编号=\'123\')请教在这个SQL语句里面,like后面该怎么写?
回复

使用道具 举报

千问 | 2011-8-26 02:55:58 | 显示全部楼层
用in吧,不要用like也可能是我的理解错了,我的理解是CSDYDJ.产权证号的值,比如有(1,2,3)这3个值,包含在selectCSAJZT.产权证号fromCSAJZTWHERE受理编号=\'123\'内,比如有(3,4,5)这3个值,得出的结果是3追问就是这个意思
回复

使用道具 举报

千问 | 2011-8-26 02:55:58 | 显示全部楼层
把like改成IN就好了
回复

使用道具 举报

千问 | 2011-8-26 02:55:58 | 显示全部楼层
查询不出来
回复

使用道具 举报

千问 | 2011-8-26 02:55:58 | 显示全部楼层
自己写了一个小例子你看下吧createtable#a(aint,bint)createtable#b(cint,bint)insert#avalues(1,23)insert#avalues(2,533)insert#avalues(3,243)insert#avalues(4,223)insert#bvalues(1,23)insert#bvalues(2,533)insert#bvalues(3,243)insert#bvalues(5,233)select*from#awhereain(selectcfrom#b)droptable#a,#b
回复

使用道具 举报

千问 | 2011-8-26 02:55:58 | 显示全部楼层
如果你是想CSDYDJ.产权证号包含在CSAJZT.产权证号,那你就把你语句中的like换成in如果你想模糊查询,那你(selectCSAJZT.产权证号fromCSAJZTWHERE受理编号=\'123\')语句必须保证只能查询出一条数据
回复

使用道具 举报

千问 | 2011-8-26 02:55:58 | 显示全部楼层
改为这样select*fromCSAJZT,CSDYDJwhereCSDYDJ.产权证号=CSAJZT.产权证号ANDCSDYDJ.受理编号=\'123\'专家提供:
回复

使用道具 举报

千问 | 2011-8-26 02:55:58 | 显示全部楼层
select*fromCSAJZT,CSDYDJwhereCSAJZT.受理编号=\'123\'------------------------------------直接这样就行,干嘛要写的那么复杂
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行