是否可以独立加入MySQL行

时间:2016-11-03 01:32:34

标签: mysql

所以我有一个带有id的表,用一个字母开头表示它们与哪个表ID相关,即D86表示它们位于id为86的$object = 'a' $object -ne $null #True $object -eq $null #False $null -ne $object #True $null -eq $object #False 表中,并且L86表示他们位于division表中,ID为86.

所以我想知道是否有可能做lab之类的事情而使用col like 'D%' left join div on ...来做另一件事。

2 个答案:

答案 0 :(得分:1)

您可以这样做:

select . . .
from t left join
     division d
     on t.id = concat('D', d.id) left join
     lab l
     on t.id = concat('L', l.id);

答案 1 :(得分:0)

我是如何解决它的。

SELECT * FROM user 

LEFT JOIN general_group 
    ON general_group.id = user.id 
LEFT JOIN `div` 
    ON `div`.id = substr(general_group.where_id,2)

WHERE general_group.where_id LIKE 'D%'

UNION

SELECT * FROM user 

LEFT JOIN general_group 
    ON general_group.id = user.id 
LEFT JOIN `lab` 
    ON `lab`.id = substr(general_group.where_id,2)

WHERE general_group.where_id LIKE 'L%';