Ich habe eine Abfrage mit mehreren Joins, für die DOC_TYPE
Spalte NULL kommt, auch wenn es einige Werte enthält. Die Abfrage ist unterSQL-Abfrage gibt kein korrektes Ergebnis zurück
SELECT
a.mkey,
c.type_desc DOC_TYPE,
a.doc_no INWARD_NO,
CONVERT(VARCHAR, a.doc_date, 103) date,
a.to_user,
a.No_of_pages,
Ref_No,
c.type_desc DEPT_RECEIVED,
c.type_desc EMP_RECEIVED,
b.first_name + ' ' + b.last_name NAME,
b.email
FROM
inward_doc_tracking_hdr a
LEFT JOIN
user_mst b ON a.to_user = b.mkey
LEFT JOIN
type_mst_a c ON a.doc_type = c.master_mkey
AND a.dept_received = c.Master_mkey
AND a.emp_received = c.Master_mkey
WHERE
a.to_user = '1279'
Der doc_type
Wert 428
und deren desciption ist stammt aus
select type_desc
from type_mst_a
where master_mkey = 428
als Drawing
aber wenn ich die Join-Abfrage betreibe ich es als NULL erhalten. Warum ??
I SQL Server 2005.
Überprüfen Sie Ihre Daten, ist das letzte ON Prädikat erfüllt? – Serg
@Serg: was sagst du, ich habe dich nicht? – BNN
Ich meine 'a.doc_type = c.master_mkey und a..dept_received = c.Master_mkey und a.emp_received = c.Master_mkey' Prädikat, Sie sagten' a.doc_type' = 428, was ist mit 'a.dept_received' und 'a.emp_received'? – Serg