求一句SQL语句的写法

lee_billiy 2006-08-01 02:22:12
现有一张表tt,表的结构和字段内容如下:
a b
1 0
2 0
3 0
4 1
我现在要写一句SQL语句,select * from gg where id like '1%' or '2%' or '3%'
其实我就想把select a from tt where b =0 的记录给选出来,以用来实现id like '1%' or '2%' or '3%'这样的功能,我只想用一句SQL语句实现,请问大家有什么好的办法和建议,在线等
...全文
147 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxykje 2006-08-01
  • 打赏
  • 举报
回复
晕~
我试了怎么可以
lee_billiy 2006-08-01
  • 打赏
  • 举报
回复
问题解决了,对TT表再加一列a的长度,用in和not in来控制
lee_billiy 2006-08-01
  • 打赏
  • 举报
回复
那个不行的,会提示返回值多于一行的错误,我之前就试了
sxykje 2006-08-01
  • 打赏
  • 举报
回复
select *
from gg,(select (a||'%') as a from tt where tt.b=0) aa
where gg.id like aa.a
lee_billiy 2006-08-01
  • 打赏
  • 举报
回复
谢谢czbbbs(强弩)的回答,可是我tt表里的a字段的内容是不定长的,可能是1位数,也可能是2位,3位数字
czbbbs 2006-08-01
  • 打赏
  • 举报
回复
where条件语句可以写成下面的形式
...........
where substr(b,1,1) not in (select a from tt where b = 0)
lee_billiy 2006-08-01
  • 打赏
  • 举报
回复
可能是我表述不清楚吧,gg和id和表tt没关系,其实我就想写个SQL语句,where后的内容是一个字段(比如说id,它属于哪张表不用关心), id like '1%' or id like '2%' or id like '3%',而1,2,3则是我tt表里b=0所对应a字段的内容
sxykje 2006-08-01
  • 打赏
  • 举报
回复
不解?
又是tt又是gg
还有id
到底什么意思?
lee_billiy 2006-08-01
  • 打赏
  • 举报
回复
我想实现的是select * from gg where id like '1%' or id like '2%' or id like '3%'

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧