'How To Join From multiple tables
I have these 2 queries but I'm not sure how to join them properly to yield tracking results of 'batch and lot' on part if applicable, with date range as is from the first query. Individually, they worked as expected so any pointer on how to combine them or what I am missing is much appreciated. Thank you very much!
1)
SELECT
SYSUSER.USERNAME,
INVENTORYLOG.EVENTDATE,
PART.NUM PART,
INVENTORYLOGTYPE.DESCRIPTION EVENT,
BEGLOC.NAME BEGLOCATION,
BEGLOCGRP.NAME BEGGROUP,
ENDLOC.NAME ENDLOCATION,
ENDLOCGRP.NAME ENDGROUP,
INVENTORYLOG.CHANGEQTY,
INVENTORYLOG.QTYONHAND,
COALESCE(INVENTORYLOG.INFO, '') AS INFO,
UOM.CODE AS UOMCODE
FROM
INVENTORYLOG
INNER JOIN INVENTORYLOGTYPE
ON INVENTORYLOG.TYPEID = INVENTORYLOGTYPE.ID
INNER JOIN LOCATION BEGLOC
ON INVENTORYLOG.BEGLOCATIONID = BEGLOC.ID
INNER JOIN LOCATIONGROUP BEGLOCGRP
ON BEGLOC.LOCATIONGROUPID = BEGLOCGRP.ID
INNER JOIN LOCATION ENDLOC
ON INVENTORYLOG.ENDLOCATIONID = ENDLOC.ID
INNER JOIN LOCATIONGROUP ENDLOCGRP
ON ENDLOC.LOCATIONGROUPID = ENDLOCGRP.ID
INNER JOIN PART
ON INVENTORYLOG.PARTID = PART.ID
INNER JOIN UOM
ON PART.UOMID = UOM.ID
INNER JOIN SYSUSER
ON INVENTORYLOG.USERID = SYSUSER.ID
WHERE
INVENTORYLOG.EVENTDATE BETWEEN $RANGE{date_range}
ORDER BY
INVENTORYLOG.EVENTDATE DESC
SELECT
CONCAT(batch.info, '.', pklot.info) AS 'Batch and Lot'
FROM
PICKITEM
LEFT JOIN
( SELECT
info,
recordid
FROM
trackinginfo
WHERE
parttrackingid = 2
AND tableid = -1515431424 ) batch
ON pickitem.id = batch.recordid
LEFT JOIN
( SELECT
info,
recordid
FROM
trackinginfo
WHERE
parttrackingid = 6
AND tableid = -1515431424 ) pklot
ON pickitem.id = pklot.recordid
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
