吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1007|回复: 17
收起左侧

[求助] sql 一张表的字段存放的另一张表的ID,怎么查询出另一张表的所有数据?

[复制链接]
Cool_Breeze 发表于 2022-7-27 15:23
比如这样:
Route表字段ST1....STN存的workStation 表中的ID。
[SQL] 纯文本查看 复制代码
SELECT Route.name,workStation.normal,f2.normal,f3.normal,f4.normal,f5.normal,f6.normal,f7.normal
  FROM Route 
  join workStation on Route.ST1 = workStation.id 
  join workStation f2 on Route.ST2 = f2.id
  join workStation f3 on Route.ST3 = f3.id
  join workStation f4 on Route.ST4 = f4.id
  join workStation f5 on Route.ST5 = f5.id
  join workStation f6 on Route.ST6 = f6.id
  join workStation f7 on Route.ST7 = f7.id;

还有其它方法吗?

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| Cool_Breeze 发表于 2022-7-27 17:37
workStation存放的是单个工站的信息,route将几十到上百个工站连接起来。所有有了这个结构,不知道还有其它结构比这个更好的吗?,这个结构就是不好查询。
 楼主| Cool_Breeze 发表于 2022-7-27 15:33
还是分多少查询好一些,还是一次查询多次join好呢?
Atlantis908 发表于 2022-7-27 15:35
都是同一张表为什么要join这么多次?没看明白~

SELECT Route.name,f1.normal,f1.normal,f1.normal,f1.normal,f1.normal,f1.normal,f1.normal
  FROM Route
  join workStation f1 on Route.ST1 = workStation.id  and Route.ST2 = f1.id and Route.ST3 = f1.id;
Piz.liu 发表于 2022-7-27 15:51
[SQL] 纯文本查看 复制代码
SELECT t1.name,t2.normal
  FROM Route t1
  join workStation t2 on t1.ST1 = t2.id or t1.ST2 = t2.id or t1.ST3 = t2.id or t1.ST4 = t2.id or t1.ST5 = t2.id or t1.ST6 = t2.id or  t1.ST7 = t2.id


这样?
1521441710 发表于 2022-7-27 16:10
你这想法倒是挺奇怪的
wxk0248 发表于 2022-7-27 16:18
根据你的数据库类型,可以尝试下Route表先进行列转行,然后再join
一个瓜皮 发表于 2022-7-27 16:54
额,能看看表结构吗,你这个实例看着好怪哦
luby 发表于 2022-7-27 16:55
Piz.liu 发表于 2022-7-27 15:51
[mw_shl_code=sql,true]SELECT t1.name,t2.normal
  FROM Route t1
  join workStation t2 on t1.ST1 = t ...

这种如果 要取t2中的数据 怕就不行了
 楼主| Cool_Breeze 发表于 2022-7-27 17:06
Atlantis908 发表于 2022-7-27 15:35
都是同一张表为什么要join这么多次?没看明白~

SELECT Route.name,f1.normal,f1.normal,f1.normal,f1.no ...

sqlite 好像不行,查询不了。
Piz.liu 发表于 2022-7-27 17:29
luby 发表于 2022-7-27 16:55
这种如果 要取t2中的数据 怕就不行了

这有啥不行 只要有关联就能取
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 08:49

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表