MYSQL 选择 - 特殊情况
MYSQL selection - particular case
我有第一个 table T1 有 2 列:
'id','info'
值示例:
'p1','infoP1'
'p2','infoP2'
'c1','infoC1'
'c2','infoC2'
'c3','infoC3'
'e4','infoE4'
我有第二个 table T2,有 2 列:
'id_p','id_c'
值示例:
'p1','c1'
'p1','c2'
'p2','c3'
'p2','c4'
我无法更改这些 table 的结构。
我想制作一个 SELECT 以获得以下结果:
'idE','infoE','infoP'
具有以下值:
'c1','infoC1','infoP1'
'c2','infoC2','infoP1'
'c3','infoC3','infoP2'
'c4','infoC4','infoP2'
但是我没有成功
我怎样才能做到这一点?
编辑:最后我做了一个混合的子请求,我成功地得到了好的结果。
谢谢大家帮助我!
如果您想 select 使用相同的 ID 从两个表中获取数据。以下查询可能对您有所帮助:
SELECT * 来自表 1 作为 T1 加入表 2 作为 T2 其中 T1.id = T2.id
你应该加入 T2 table 和 T1 table 两次。第一次获得 "info" 获得 "id_c" 第二次获得 "info" 获得 "id_p".
这应该有效:
SELECT j.id_c, f.info, s.info
FROM T1 as f, T2 as j, T1 as s
WHERE f.id=j.id_c AND s.id=j.id_p;
我有第一个 table T1 有 2 列:
'id','info'
值示例:
'p1','infoP1'
'p2','infoP2'
'c1','infoC1'
'c2','infoC2'
'c3','infoC3'
'e4','infoE4'
我有第二个 table T2,有 2 列:
'id_p','id_c'
值示例:
'p1','c1'
'p1','c2'
'p2','c3'
'p2','c4'
我无法更改这些 table 的结构。
我想制作一个 SELECT 以获得以下结果:
'idE','infoE','infoP'
具有以下值:
'c1','infoC1','infoP1'
'c2','infoC2','infoP1'
'c3','infoC3','infoP2'
'c4','infoC4','infoP2'
但是我没有成功
我怎样才能做到这一点?
编辑:最后我做了一个混合的子请求,我成功地得到了好的结果。 谢谢大家帮助我!
如果您想 select 使用相同的 ID 从两个表中获取数据。以下查询可能对您有所帮助:
SELECT * 来自表 1 作为 T1 加入表 2 作为 T2 其中 T1.id = T2.id
你应该加入 T2 table 和 T1 table 两次。第一次获得 "info" 获得 "id_c" 第二次获得 "info" 获得 "id_p".
这应该有效:
SELECT j.id_c, f.info, s.info
FROM T1 as f, T2 as j, T1 as s
WHERE f.id=j.id_c AND s.id=j.id_p;