[英]How to get all rows from left table if there are two left join
我在 mysqli 查詢中添加了兩個左連接,我需要第一個表 audit_form_tbl 中的所有行。
SELECT qt1.field_id
, qt1.type
, qt1.parent_id
, qt1.field_type
, qt1.field_name
, qt1.required
, qt1.maxlength
, qft1.field_value
, qt1.can_be_na
, qft1.form_id
, avtf.type_variable
FROM audit_form_tbl qt1
LEFT
JOIN audit_variables_tbl avtf
ON qt1.audit_variable_id = avtf.id
JOIN audit_form_value_4_tbl qft1
ON qt1.field_id = qft1.field_id
WHERE qt1.field_id = qft1.field_id
AND qt1.type IN ('F')
AND avtf.company_id IN ('4', 0)
AND qt1.company_form_id = '23'
AND qft1.form_id = '4231578043277'
AND qt1.parent_id = ''
AND qt1.status = 1
ORDER
BY qt1.sort_order ASC
審計表單表有一些沒有插入 audit_value_tbl 的行。 我只獲取已插入 audit_value_tbl 表中的行。
SELECT qt1.field_id
, qt1.type
, qt1.parent_id
, qt1.field_type
, qt1.field_name
, qt1.required
, qt1.maxlength
, qft1.field_value
, qt1.can_be_na
, qft1.form_id
, avtf.type_variable
FROM audit_form_tbl qt1
LEFT
JOIN audit_variables_tbl avtf
ON qt1.audit_variable_id = avtf.id
AND avtf.company_id IN (4,0)
LEFT -- <-- obviously, omit this if you want an INNER JOIN here
JOIN audit_form_value_4_tbl qft1
ON qt1.field_id = qft1.field_id
AND qft1.form_id = '4231578043277'
AND qt1.field_id = qft1.field_id
WHERE qt1.type IN ('F')
AND qt1.company_form_id = 23
AND qt1.parent_id = ''
AND qt1.status = 1
ORDER
BY qt1.sort_order ASC
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.