求个sql语句

vgy12304 2009-08-25 05:19:05
SELECT NS_ID as id from NewsSort_C where InStr(NS_Address,'9')>0

查询NewsSort表中,NS_Address包含 9 的记录,用于无限级分类的

现在得出的结果不对,字段中包含19的,也出来了,需要查询包含9,但不能包含19,29,129,190 等等的语句

表NewsSort大概如下:
ns_id NS_Address
1 0,9
9 0,19
10 0,9
19 0,9,10
...全文
101 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
vgy12304 2009-08-26
  • 打赏
  • 举报
回复
恩,2楼,4楼的都正解,谢谢

答复1楼的,虽然你不懂,还是谢谢你的参与
答复3楼的,如果ns_id是,9和,90,900 还是识别不出来的
答复5楼的,有抄袭楼上的嫌疑哦
答复6楼的,access中不能使用CharIndex函数
答复7楼的,like的执行效率低,如果是备注字段,根本就不能使用


batuo527 2009-08-26
  • 打赏
  • 举报
回复
学习了.,高!
三楼の郎 2009-08-25
  • 打赏
  • 举报
回复
存的时候存成这样:
ns_id NS_Address
1 ,0,9,
9 ,0,19,
10 ,0,9,
19 ,0,9,10,

查的时候按这个查:
SELECT NS_ID as id from NewsSort_C where NS_Address like '%,9,%'
hj3793 2009-08-25
  • 打赏
  • 举报
回复
看错了函数..
更正:

SELECT NS_ID as id from NewsSort_C where CharIndex(',9,',','+NS_Address+',')>0
sy_binbin 2009-08-25
  • 打赏
  • 举报
回复
SELECT NS_ID as id from NewsSort_C where InStr(','+NS_Address+',',',9,')>0
hj3793 2009-08-25
  • 打赏
  • 举报
回复
2楼是正确的

SELECT NS_ID as id from NewsSort_C where InStr(','+NS_Address+',',',9,')>0
kkgerry 2009-08-25
  • 打赏
  • 举报
回复
我想了想是不是可以用这个
SELECT NS_ID as id from NewsSort_C where InStr(NS_Address,',9')>0
hookee 2009-08-25
  • 打赏
  • 举报
回复
SELECT NS_ID as id from NewsSort_C where InStr(NS_Address+',', ',9,')>0
xiaojielanbaihe 2009-08-25
  • 打赏
  • 举报
回复
where 字段=9

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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