问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql语句请教。

发布网友 发布时间:2022-04-10 12:48

我来回答

3个回答

热心网友 时间:2022-04-10 14:17

修改一下:

select a.id,a.name from a , (
select replace(b.aid||b.bid,'8888','') ids ,b.yi  from b where b.aid=8888 or b.bid=8888
)b
WHERE a.id=b.ids 
GROUP BY a.id , a.name
ORDER BY MIN(b.yi)


测试:

idle> WITH a (ID,NAME) AS (
  2  SELECT 6666,'用户1' FROM al
  3  UNION ALL SELECT 7777,'用户2' FROM al
  4  UNION ALL SELECT 8888,'用户3' FROM al
  5  UNION ALL SELECT 9999,'用户4' FROM al
  6  ),
  7  b (id,aid,bid,yi) AS (
  8  SELECT 1,8888,9999,0 FROM al
  9  UNION ALL  SELECT 2,8888,9999,1 FROM al
 10  UNION ALL  SELECT 3,9999,8888,1 FROM al
 11  UNION ALL  SELECT 4,7777,8888,1 FROM al
 12  UNION ALL  SELECT 5,8888,6666,1 FROM al
 13  )
 14  select a.id,a.name from a , (
 15  select replace(b.aid||b.bid,'8888','') ids ,b.yi  from b where b.aid=8888 or b.bid=8888
 16  )b
 17  WHERE a.id=b.ids
 18  GROUP BY a.id , a.name
 19  ORDER BY MIN(b.yi);

        ID NAME
---------- -----
      9999 用户4
      6666 用户1
      7777 用户2

热心网友 时间:2022-04-10 15:35

declare @t table (
x int,y int,z datetime
)
insert into @t
select case when B.bid='8888' then B.aid when B.aid='8888' then B.bid end,
yi,time
from B order by yi,time desc
select * from @t a where z=(select top 1 z from @t where x=a.x)

yi和time排序都有了。
为了让你看到时间排序
最后一句select * from @t a where z=(select top 1 z from @t where x=a.x)
我选了所有。不需要的话可以这样
select x,y from @t a where z=(select top 1 z from @t where x=a.x)

热心网友 时间:2022-04-10 17:10


 WITH a (ID,[NAME]) AS (
   SELECT 6666 as id,'用户1' as [NAME] 
   UNION ALL SELECT 7777 id,'用户2' [NAME] 
   UNION ALL SELECT 8888 id,'用户3' [NAME]
   UNION ALL SELECT 9999 id,'用户4' [NAME]
    ),
    b (id,aid,bid,yi) AS (
   SELECT 1,8888,9999,0  
   UNION ALL  SELECT 2,8888,9999,1 
   UNION ALL  SELECT 3,9999,8888,1 
   UNION ALL  SELECT 4,7777,8888,1 
   UNION ALL  SELECT 5,8888,6666,1 
  )
select a.ID,a.Name from
(select  distinct aid  from b where bid='8888'
union 
select distinct bid  as aid from b where aid='8888') as b1 inner join a on b1.aid=a.id
或者
select a.id,a.[name] from
(
select distinct bid=(case bid when '8888' then aid else bid end)
from (select aid,bid from b where aid='8888' or bid='8888') as k
) m inner join a on m.bid=a.id

追问select a.ID,a.Name from
(select distinct aid from b where bid='8888'
union
select distinct bid as aid from b where aid='8888') as b1 inner join a on b1.aid=a.id

这句可以达到效果,但是怎么排序呢,

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
校园专属沃派16元B套餐是什么样的 联通4g校园套餐16元B套餐的资费是怎样的 w7电脑逆战设置不卡win7装起后还玩起逆战不卡的电脑最低配置是多少_百... 逆战画面卡 有没有给电脑用的充电宝 充电宝和游戏本的奇妙搭配,这5款充电宝能给你的联想拯救者充电。 服务器lsass经常占用CPU50% 重启下就好,过一段时间又占用50%,进程中就... ...进程里这个程序一直占用50%的CPU关了之后又会自动出来,就是今天才突... 手机有网抖音刷不出来 开中式快餐利润怎么样 履约保函被没收会发生什么后果 河南盈祥投资有限公司怎么样? 担保公司合法吗 郑州有哪家担保公司是做企业纯信用贷款的,请指教,有项目可以合作 担保金额由300万“变成”1300万,洛阳这家银行存在哪些违法问题? 小米max2怎么传歌到mp3? 6�1胡某,票据诈骗罪,公诉方应如何写意见词 红米手机里的小米音乐支持多少mp3格式啊?只要是mp3格式都支持吗? 供应链金融在哪些方面可以帮助与政府谈判 华为电脑一开机就是智能还原? 我的是用的是小米手机 播放歌曲可以 MP3格式 但是我去拷贝的MP3格式的听力文件 为什么显示不支持, 分期公司给我担保的郑州银行的钱,把我农业银行的银行卡拿走了,把我卡里的钱划到公司,合理么? 为什么小米3里显示不出MP3格式的音频? 谁知道河南海融投资担保怎么样 小米手机可以用MP3的耳机吗?。。。 郑州哪里有专门做银行保函的公司? 小米会做MP3吗 小米会不会有自己的mp3 小米mp3有什么功能 上海会计上岗证 为什么一个男生主动跟我聊天很热情,但是他发朋友圈动态我给他评论没回复我还删掉了我的评论? cpu温度和主板温度不能正常显示 我给男朋友评论朋友圈男朋友不怎么回复我 这是为啥 是不是分手了? 急!CPU看不到温度 今天我喜欢的男孩子发了一条朋友圈,我去给他评论,但是他没有回复我,他是不是不喜欢我? CPU温度显示不正常是什么原因?怎么解决? 女生评论了男生朋友圈,男生没有回复,后来隔4天又点赞了自己这条朋友圈,啥意思? 怎么显示不了cpu温度的 QQ音乐怎样升级为绿钻? 我评论男朋友微信朋友圈他从来不回复,但是我发朋友圈他就会私下发信息问我怎么了? 为什么在男朋友朋友圈下面评论他基本上都不回我 华硕cpu温度显示搞没了怎么设备回来啊 我给一男的朋友圈评论他没有回复,第二天说刚看到什么意思? CPU温度显示不变 我在男朋友朋友圈评论了他好久不回复我就删除了,后来他又给我打电话? trays不显示CPU温度 一个拒绝过我的男生,微信不回我,评论他朋友圈也不回我 驱动人生显示的cpu温度看不到了是怎么回事 一个知道我喜欢他的男生,我评论他朋友圈,他从来不回复。但是我发的朋友圈他都会赞和评论,我再回他的评 前几天闹了一点小别扭,然后最近聊天少了。我男朋友给我评论朋友圈 不给我回微信,我要回复他 吗_百度问一问