0
僅當值匹配時纔可以使用連接或進行連接嗎?Sql加入4個表格列1
像我有表GO,並且有4個ID對employeer:
equi_func1_mat
equi_func2_mat
equi_func3_mat
equi_func4_mat
和我employeer表是用戶
matricula_qt
我試圖做類似的僅僅是ID
JOIN tb_funcionario func ON go.equi_func1_mat = func.matricula_qt
OR JOIN tb_funcionario func ON go.equi_func2_mat = func.matricula_qt
OR JOIN tb_funcionario func ON go.equi_func3_mat = func.matricula_qt
OR JOIN tb_funcionario func ON go.equi_func4_mat = func.matricula_qt
我也試過這樣:
JOIN tb_funcionario func ON go.equi_func1_mat = func.matricula_qt
OR go.equi_func2_mat OR go.equi_func3_mat OR go.equi_func4_mat
完整的查詢工作只是一個僱主:
SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(temp.tempoexposicao))) AS soma_tudo,
temp.cod_go,
temp.data,
temp.item,
temp.equi_func1_mat
FROM(
SELECT
prog.cod_go,
prog.data,
prog.item,
prog.tempoexposicao,
go.equi_func1_mat
FROM tb_programacao prog
JOIN tb_go go ON go.cod_go = prog.cod_go
JOIN tb_funcionario func ON go.equi_func1_mat = func.matricula_qt
JOIN tb_horario hora ON func.cod = hora.cod_funcionario
WHERE go.cod_go = prog.cod_go
AND prog.data = hora.data
GROUP BY prog.data,prog.item) AS temp
我沒有發現在MySQL文檔的任何幫助或網頁的人都知道,如果它是可能的嗎?
謝謝!
有什麼問題,你有,當你嘗試使用其中一個查詢,例如'on'子句中的'or'? –
在OR中,我不知道它是否可以匹配他們加入的柱子 –
你可以用OR加入,但這可能會使你從每個子項目的子查詢中返回多行(並且你的組除去一個,以及哪一個是未定義的)。您可以使用4個LEFT OUTER JOIN,每個func使用一個值,然後使用一個值。 – Kickstart