I have 6 tables that I need to join. Each table has an identifier that exists in all other tables. I can join the first 3 tables using DISTINCT and I get the results I am looking for. But when I try to add any of the remaining three tables I get only a few records. I could create 2 separate queries for 3 tables / 3 tables and then run an update query to update the main or first three tables from the second set of tables. I suspect that I need subquery of some kind and don't know much about them but it seems that I should be able to join all six tables via a subquery ?
Here are the first three tables joined.
SELECT DISTINCT dbo.tbl_CMD_ORDERITM.OIORDR, dbo.tbl_CMD_ORDHDR.OHORDR, dbo.tbl_CMD_BILLMAST.BMNAME, dbo.tbl_CMD_ORDERITM.OIPART, dbo.tbl_CMD_ORDERITM.OITQTY, dbo.tbl_CMD_ORDERITM.OIPRCE, dbo.tbl_CMD_ORDERITM.OIPLIN
FROM dbo.tbl_CMD_ORDERITM INNER JOIN dbo.tbl_CMD_ORDHDR ON dbo.tbl_CMD_ORDERITM.OIORDR = dbo.tbl_CMD_ORDHDR.OHORDR INNER JOIN dbo.tbl_CMD_BILLMAST ON dbo.tbl_CMD_ORDERITM.OICUST = dbo.tbl_CMD_BILLMAST.BMCST
Here are the second three tables.
SELECT DISTINCT dbo.tbl_CMD_ORDERSCH.SCSHYR AS Expr4, dbo.tbl_CMD_ORDERSCH.SCSHMN, dbo.tbl_CMD_ORDERSCH.SCSHDY,
dbo.tbl_CMD_ORDERPRF.PSPFYR, dbo.tbl_CMD_ORDERPRF.PSPFMN, dbo.tbl_CMD_ORDERPRF.PSPFDY, dbo.tbl_CMD_ORDERCRQ.ORORDR, dbo.tbl_CMD_ORDERSCH.SCORDR, dbo.tbl_CMD_ORDERPRF.PSORDR, dbo.tbl_CMD_ORDERCRQ.ORDAY,dbo.tbl_CMD_ORDERCRQ.ORMNTH, dbo.tbl_CMD_ORDERCRQ.ORYEAR
FROM dbo.tbl_CMD_ORDERCRQ INNER JOIN dbo.tbl_CMD_ORDERSCH ON dbo.tbl_CMD_ORDERCRQ.ORORDR = bo.tbl_CMD_ORDERSCH.SCORDR INNER JOIN dbo.tbl_CMD_ORDERPRF ON dbo.tbl_CMD_ORDERSCH.SCORDR = dbo.tbl_CMD_ORDERPRF.PSORDR
Is this something that can be done with a select and subquery or should I be looking elsewhere ?
Thanks
Here are the first three tables joined.
SELECT DISTINCT dbo.tbl_CMD_ORDERITM.OIORDR, dbo.tbl_CMD_ORDHDR.OHORDR, dbo.tbl_CMD_BILLMAST.BMNAME, dbo.tbl_CMD_ORDERITM.OIPART, dbo.tbl_CMD_ORDERITM.OITQTY, dbo.tbl_CMD_ORDERITM.OIPRCE, dbo.tbl_CMD_ORDERITM.OIPLIN
FROM dbo.tbl_CMD_ORDERITM INNER JOIN dbo.tbl_CMD_ORDHDR ON dbo.tbl_CMD_ORDERITM.OIORDR = dbo.tbl_CMD_ORDHDR.OHORDR INNER JOIN dbo.tbl_CMD_BILLMAST ON dbo.tbl_CMD_ORDERITM.OICUST = dbo.tbl_CMD_BILLMAST.BMCST
Here are the second three tables.
SELECT DISTINCT dbo.tbl_CMD_ORDERSCH.SCSHYR AS Expr4, dbo.tbl_CMD_ORDERSCH.SCSHMN, dbo.tbl_CMD_ORDERSCH.SCSHDY,
dbo.tbl_CMD_ORDERPRF.PSPFYR, dbo.tbl_CMD_ORDERPRF.PSPFMN, dbo.tbl_CMD_ORDERPRF.PSPFDY, dbo.tbl_CMD_ORDERCRQ.ORORDR, dbo.tbl_CMD_ORDERSCH.SCORDR, dbo.tbl_CMD_ORDERPRF.PSORDR, dbo.tbl_CMD_ORDERCRQ.ORDAY,dbo.tbl_CMD_ORDERCRQ.ORMNTH, dbo.tbl_CMD_ORDERCRQ.ORYEAR
FROM dbo.tbl_CMD_ORDERCRQ INNER JOIN dbo.tbl_CMD_ORDERSCH ON dbo.tbl_CMD_ORDERCRQ.ORORDR = bo.tbl_CMD_ORDERSCH.SCORDR INNER JOIN dbo.tbl_CMD_ORDERPRF ON dbo.tbl_CMD_ORDERSCH.SCORDR = dbo.tbl_CMD_ORDERPRF.PSORDR
Is this something that can be done with a select and subquery or should I be looking elsewhere ?
Thanks