知虚 2022-10-31 23:28 采纳率: 80%
浏览 17
已结题

SQL运行结果有疑问

下面这段sql运行结果我有一些疑问,为什么查询出来会有重复数据?


SELECT
    n.* 
FROM
    sys_role_user RU
    INNER JOIN sys_role_node RN
    INNER JOIN sys_node n 
WHERE
    RU.role_id = RN.role_id 
    AND n.node_id = RN.node_id 
    AND RU.user_id = '1' 
ORDER BY
    n.node_code;

这是表结构和数据:



img

img

img

img

  • 写回答

1条回答 默认 最新

  • 骆言 2022-11-01 08:45
    关注

    因为 RU.user_id = '1' `
    sys_role_user RU 表 有两条数据

    ru_idrole_iduser_id
    121
    1211

    条件 role_id [2, 1]
    连上 RU.role_id = RN.role_id
    sys_role_nod RN 表有下面数据

    rn_idrole_idnode_id
    111
    212
    313
    421
    522
    623
    724

    条件 node_id [1,2,3,1,2,3,4]
    连上 n.node_id = RN.node_id
    sys_node n 表数据被查出、再排序,就是你截图里的执行结果了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月9日
  • 专家修改了标签 11月1日
  • 已采纳回答 11月1日
  • 创建了问题 10月31日

悬赏问题

  • ¥15 欧拉系统opt目录空间使用100%
  • ¥15 ul做导航栏格式不对怎么改?
  • ¥20 用户端如何上传图片到服务器和数据库里
  • ¥15 现在研究生在烦开题,看了一些文献,但不知道自己要做什么,求指导。
  • ¥30 vivado封装时总是显示缺少一个dcp文件
  • ¥100 pxe uefi启动 tinycore
  • ¥15 我pycharm运行jupyter时出现Jupyter server process exited with code 1,然后打开cmd显示如下
  • ¥15 可否使用carsim-simulink进行四轮独立转向汽车的联合仿真,实现四轮独立转向汽车原地旋转、斜向形式、横移等动作,如果可以的话在carsim中如何进行相应设置
  • ¥15 Caché 2016 在Java环境通过jdbc 执行sql报Parameter list mismatch错误,但是同样的sql使用连接工具可以查询出数据
  • ¥15 疾病的获得与年龄是否有关