作者LaPass (LaPass)
看板Database
标题[SQL ] 以table栏位的资料去决定关联哪个资料表
时间Tue Dec 24 16:49:49 2013
例如
Table main
id name table_name table_id
1 小华 user 2
2 小美 user 3
3 老王 admin 1
3 老张 admin 2
Table user
id title
1 使用者
2 使用者2
3 勇者01
Table admin
id title
1 管理者
2 GM
请问有没有办法输出像这样结果
id name table_name table_id title
1 小华 user 2 使用者2
2 小美 user 3 勇者01
3 老王 admin 1 管理者
3 老张 admin 2 GM
PS 1. table_name中可能有其他的table
2. table_name中的table保证有title这个栏位
虽然正规的资料库设计没有这种用法
但老实说,我还蛮常见到这样的用法的。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.117.36.2
1F:→ moyasi:只有这几个table的话 union就解决了 12/24 16:56
2F:→ LaPass:重点就是,不确定里面的TABLE有多少,这样~ 12/24 17:52
3F:推 rosemary:满常见这种用法? 12/24 23:35
4F:→ shomingchang:字串值能当表格名写在SQL中吗? 12/25 00:43
5F:→ shomingchang:如果可以分段做 而且你还有另一个表记录所有的资料表 12/25 00:46
6F:推 shomingchang:先select table main 12/25 00:49
7F:→ shomingchang:取出tanle_name 和 table_id 12/25 00:50
8F:→ shomingchang:然後再下一次SQL指令查 table_name 这个表 12/25 00:53
9F:→ shomingchang:where 条件就设成 table_id 12/25 00:54
10F:→ shomingchang:好像不用再用一个表记录所有资料表XD 12/25 00:55
11F:→ shomingchang:应该只能从程式语言做多次查询再把结果拼起来吧 12/25 00:56
12F:→ LaPass:果然还是只能分段做呢... 12/25 01:18