I have my SQL Query that displays all the needed data, but I need help with getting a certain output. I need to display a column labeled Loop (which isn't in the mass query), LPT, and the SUM
of PLAN_MOVES
using the query below. I can do a select sum on Plan_Moves
and label it Target_Daily_Moves
but not sure how to display the other two columns. Please help me as I am still learning SQL.
I'm trying to display this expected outcome.
New Mass Query SQL W/o " reserved loop name":
select
da.family,
sysdate update_dttm,
max(dds.sched_update_dttm) max_sched_update_dttm,
dds.lpt,
( case WHEN dds.lpt = '1400' THEN 'MOAT'
WHEN dds.lpt = '3300' THEN 'GATE'
WHEN dds.lpt = '4800' THEN 'S/D'
WHEN dds.lpt = '5130' THEN 'PMD'
WHEN dds.lpt = '5800' THEN 'CONTACT'
WHEN dds.lpt = '6400' THEN 'VIA 1'
WHEN dds.lpt = '6900' THEN 'VIA 2'
WHEN dds.lpt = '7900' THEN 'VIA 3-4'
WHEN dds.lpt = '9200' THEN 'PO'
WHEN dds.lpt = '9348' THEN 'PARAMETRICS'
WHEN dds.lpt = '9950' THEN 'OUTS'
else 'none'
end) as LOOPS_INFO,
sum(dds.sched_cur_qty) plan_moves
from device_daily_sched@smsdwde2.itg.ti.com dds, dm_lpt_attributes@Smsdwde2.itg.ti.com la, dm_device_attributes@smsdwde2.itg.ti.com da
where
dds.facility = 'DP1DM5'
and dds.facility = la.facility
and dds.lpt = la.lpt
and dds.device = da.device
and dds.lpt in('1400','3300','4800','5130','5800','6400','6900','7900','9200','9348','9950')
and (dds.device like 'SN/%'or dds.device like 'SS/%')
and (dds.sched_dttm = trunc(sysdate))
and dds.device not in('SN/BC3ZLTM','SN/DMD8SF','SN/DMD8','SN/DMDASSEM','SN/R035','SN/RFSIGNET','SN/SMIC','SS/BC3ZL','SS/BICOM3ZL','SS/BICOM3','SS/BICOMPBO','SS/R05S','SS/THERM')
group by
da.family,
dds.lpt
Original Mass Query SQL W/o " reserved loop name" OutPut:
UPDATED: SQL from Last comment to include "loops_info" instead of "loop":
SELECT a.LOOPS_INFO AS 'LOOPS_INFO',
a.lpt AS 'LPT',
SUM(a.plan_moves) AS 'Target Daily Moves'
FROM (
select
da.family,
sysdate update_dttm,
max(dds.sched_update_dttm) max_sched_update_dttm,
dds.lpt,
( case WHEN dds.lpt = '1400' THEN 'MOAT'
WHEN dds.lpt = '3300' THEN 'GATE'
WHEN dds.lpt = '4800' THEN 'S/D'
WHEN dds.lpt = '5130' THEN 'PMD'
WHEN dds.lpt = '5800' THEN 'CONTACT'
WHEN dds.lpt = '6400' THEN 'VIA 1'
WHEN dds.lpt = '6900' THEN 'VIA 2'
WHEN dds.lpt = '7900' THEN 'VIA 3-4'
WHEN dds.lpt = '9200' THEN 'PO'
WHEN dds.lpt = '9348' THEN 'PARAMETRICS'
WHEN dds.lpt = '9950' THEN 'OUTS'
else 'none'
end) as LOOPS_INFO,
sum(dds.sched_cur_qty) plan_moves
from device_daily_sched@smsdwde2.itg.ti.com dds, dm_lpt_attributes@Smsdwde2.itg.ti.com la, dm_device_attributes@smsdwde2.itg.ti.com da
where
dds.facility = 'DP1DM5'
and dds.facility = la.facility
and dds.lpt = la.lpt
and dds.device = da.device
and dds.lpt in('1400','3300','4800','5130','5800','6400','6900','7900','9200','9348','9950')
and (dds.device like 'SN/%'or dds.device like 'SS/%')
and (dds.sched_dttm = trunc(sysdate))
and dds.device not in('SN/BC3ZLTM','SN/DMD8SF','SN/DMD8','SN/DMDASSEM','SN/R035','SN/RFSIGNET','SN/SMIC','SS/BC3ZL','SS/BICOM3ZL','SS/BICOM3','SS/BICOMPBO','SS/R05S','SS/THERM')
group by
da.family,
dds.lpt ) AS a
ORDER BY a.lpt ASC
GROUP BY a.lpt
UNION
SELECT 'TOTAL' AS 'LOOPS_INFO',
'' AS 'LPT',
SUM(b.plan_moves) AS 'Target Daily Moves'
FROM (
select
da.family,
sysdate update_dttm,
max(dds.sched_update_dttm) max_sched_update_dttm,
dds.lpt,
( case WHEN dds.lpt = '1400' THEN 'MOAT'
WHEN dds.lpt = '3300' THEN 'GATE'
WHEN dds.lpt = '4800' THEN 'S/D'
WHEN dds.lpt = '5130' THEN 'PMD'
WHEN dds.lpt = '5800' THEN 'CONTACT'
WHEN dds.lpt = '6400' THEN 'VIA 1'
WHEN dds.lpt = '6900' THEN 'VIA 2'
WHEN dds.lpt = '7900' THEN 'VIA 3-4'
WHEN dds.lpt = '9200' THEN 'PO'
WHEN dds.lpt = '9348' THEN 'PARAMETRICS'
WHEN dds.lpt = '9950' THEN 'OUTS'
else 'none'
end) as LOOPS_INFO,
sum(dds.sched_cur_qty) plan_moves
from device_daily_sched@smsdwde2.itg.ti.com dds, dm_lpt_attributes@Smsdwde2.itg.ti.com la, dm_device_attributes@smsdwde2.itg.ti.com da
where
dds.facility = 'DP1DM5'
and dds.facility = la.facility
and dds.lpt = la.lpt
and dds.device = da.device
and dds.lpt in('1400','3300','4800','5130','5800','6400','6900','7900','9200','9348','9950')
and (dds.device like 'SN/%'or dds.device like 'SS/%')
and (dds.sched_dttm = trunc(sysdate))
and dds.device not in('SN/BC3ZLTM','SN/DMD8SF','SN/DMD8','SN/DMDASSEM','SN/R035','SN/RFSIGNET','SN/SMIC','SS/BC3ZL','SS/BICOM3ZL','SS/BICOM3','SS/BICOMPBO','SS/R05S','SS/THERM')
group by
da.family,
dds.lpt ) AS b
Same Output Error: ORA-00923: FROM keyword not found where expected