请教 为什么这样写不起作用

gag888 2018-12-04 07:43:54
select a.id,a.uid,a.xianlu,a.pbqd from zd_base a,zd_base b where a.uid!=b.uid and a.xianlu=b.xianlu and find_in_set('幸福站',a.pbqd) group by a.id having count(1)>0

查询结果如下图




需要实现的是

1 a.uid!=b.uid

2 a.xianlu=b.xianlu

3 关键词 find_in_set('幸福站',a.pbqd)

以上3个 任何一个条件不满足都不显示 三个都满足一起显示

...全文
206 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 版主 2018-12-07
  • 打赏
  • 举报
回复
我用mssql写的,楼主看一下
--测试数据
if not object_id(N'Tempdb..#T') is null
	drop table #T
Go
Create table #T([id] int,[uid] int,[xianlu] int,[pbqd] nvarchar(37))
Insert #T
select 1,1,1,N'1,2,3,4,5,6' union all
select 2,1,3,N'10,11,12,13' union all
select 3,1,2,N'14,12,16,19' union all
select 4,1,4,N'13,21,23,24,46,65' union all
select 5,1,6,N'23,30,22,38,47,' union all
select 6,2,1,N'70,71,72,73,6' union all
select 7,2,7,N'74,75,76,77,78,79' union all
select 8,2,11,N'81,82,83,84,85' union all
select 9,2,8,N'86,87,88,89' union all
select 10,2,9,N'90,91,92,93,94'
Go
--测试数据结束
SELECT a.*
FROM #T a
    JOIN #T b
        ON b.uid <> a.uid
           AND b.xianlu = a.xianlu
           AND a.pbqd LIKE '%6%'
           AND b.pbqd LIKE '%6%';
gag888 2018-12-07
  • 打赏
  • 举报
回复
引用 9 楼 二月十六 的回复:
楼主你这样写得到的数据没有问题,楼主可以这样看一下得到的数据是什么,就是可能不是你想要的
select a.id,a.uid,a.xianlu,a.pbqd,b.id,b.uid,b.xianlu,b.pbqd from zd_base a,zd_base b where a.uid!=b.uid and a.xianlu=b.xianlu and find_in_set('幸福站',a.pbqd) group by a.id having count(1)>0


楼主你可以描述一下你想要的是什么,给出测试数据和想要的结果,直接帮你写语句


同一张表 如下

id uid xianlu pbqd
1 1 1 1,2,3,4,5,6
2 1 3 10,11,12,13
3 1 2 14,12,16,19
4 1 4 13,21,23,24,46,65
5 1 6 23,30,22,38,47,
6 2 1 70,71,72,73,6
7 2 7 74,75,76,77,78,79
8 2 11 81,82,83,84,85
9 2 8 86,87,88,89
10 2 9 90,91,92,93,94

需要找出 主要以 pbqd 这个字段里的 6 来查询 uid不能相同 xianlu相同的条数 以上符合条件 只有1和6






gag888 2018-12-06
  • 打赏
  • 举报
回复
引用 7 楼 吉普赛的歌 的回复:
你的语句, 写这样更容易理解:
SELECT a.id,
a.uid,
a.xianlu,
a.pbqd
FROM zd_base a
WHERE
find_in_set('幸福站', a.pbqd)
AND EXISTS(
SELECT 1
FROM zd_base b
WHERE a.uid != b.uid
AND a.xianlu = b.xianlu
)


显示出来的, 跟你比较的根本不是一个东西。


查询出来还是一样的效果



a.uid != b.uid 但是 还是查询出来 两条用一uid的数据 所有不成立
吉普赛的歌 版主 2018-12-06
  • 打赏
  • 举报
回复
你的语句, 写这样更容易理解:
SELECT a.id,
       a.uid,
       a.xianlu,
       a.pbqd
FROM   zd_base     a
WHERE 
	find_in_set('幸福站', a.pbqd)
	AND EXISTS(
		SELECT 1 
		FROM  zd_base b
		WHERE  a.uid != b.uid
			   AND a.xianlu = b.xianlu
	)
显示出来的, 跟你比较的根本不是一个东西。
二月十六 版主 2018-12-06
  • 打赏
  • 举报
回复
引用 4 楼 gag888 的回复:
[quote=引用 3 楼 二月十六 的回复:] [quote=引用 2 楼 gag888 的回复:] 同一个表!!!
按照楼主的条件搜索出这些数据没问题,另外group by那块写的有问题,只是没有报错。 建议楼主给出测试数据和想要的对应结果。[/quote] a.uid != b.uid 仔细看第一个条件应该不满足的 但是还是被搜索出来了 [/quote] 可以有满足的, 比如 uid xianlu 1 章西线 2 章西线 a.uid != b.uid 是能搜出来结果的
卖水果的net 版主 2018-12-06
  • 打赏
  • 举报
回复
原数据长什么样,结果要什么样,计算规则是什么,都要说一下。大家好帮助你。
gag888 2018-12-06
  • 打赏
  • 举报
回复
引用 3 楼 二月十六 的回复:
[quote=引用 2 楼 gag888 的回复:] 同一个表!!!
按照楼主的条件搜索出这些数据没问题,另外group by那块写的有问题,只是没有报错。 建议楼主给出测试数据和想要的对应结果。[/quote] a.uid != b.uid 仔细看第一个条件应该不满足的 但是还是被搜索出来了
二月十六 版主 2018-12-06
  • 打赏
  • 举报
回复
楼主你这样写得到的数据没有问题,楼主可以这样看一下得到的数据是什么,就是可能不是你想要的
select a.id,a.uid,a.xianlu,a.pbqd,b.id,b.uid,b.xianlu,b.pbqd from zd_base a,zd_base b where a.uid!=b.uid and a.xianlu=b.xianlu and find_in_set('幸福站',a.pbqd) group by a.id having count(1)>0


楼主你可以描述一下你想要的是什么,给出测试数据和想要的结果,直接帮你写语句
二月十六 版主 2018-12-05
  • 打赏
  • 举报
回复
引用 2 楼 gag888 的回复:
同一个表!!!
按照楼主的条件搜索出这些数据没问题,另外group by那块写的有问题,只是没有报错。 建议楼主给出测试数据和想要的对应结果。
gag888 2018-12-04
  • 打赏
  • 举报
回复
同一个表!!!
二月十六 版主 2018-12-04
  • 打赏
  • 举报
回复
B表的数据什么样的?
微信小程序系统教程[初级阶段],微信小程序0基础学起,讲解微信小程序开发的基础知识。 微信小程序系统教程共有“微信小程序系统教程[初级阶段]”、“微信小程序系统教程[中级阶段]——核心技术”、“微信小程序系统教程[阶段]客服消息+微信支付+九宝电商系统”。 “微信小程序系统教程[阶段]全套课程”包含: 1.微信小程序系统教程[阶段]_客服消息 2.微信小程序系统教程[阶段]_微信支付 3.微信小程序系统教程[阶段]_九宝电商系统 学习“微信小程序系统教程[阶段]”要求有微信小程序的基础。建议先学习“微信小程序系统教程[初级阶段]”、“微信小程序系统教程[中级阶段]”,后在报名“微信小程序系统教程[阶段]”。 阶段讲解的客服消息,是针对小程序的。后台程序用接近底层的技术,没有使用三方技术。这样降低同学们学习成本。 微信支付,这部分课程很有难度,要求同学们认真听讲,有不会的技术问题可以请教老师。购买课程后请联系老师,提供单号,给你源程序。 九宝电商系统是一套十分适和学习、项目的课程。既可以系统的学习微信小程序相关知识,还可以修改后上线。 “微信小程序系统教程[中级阶段]——核心技术”重点讲解微信小程序事件、组件、API 微信小程序系统教程[初级阶段],微信小程序0基础学起,讲解微信小程序开发的基础知识。 购买课程的同学,可赠送就九宝老师编的《微信小程序开发宝典》。 购课请咨询qq2326321088

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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