Я пытаюсь преобразовать запрос, который обычно выполняется на сервере oracle, для работы с сервером SQL (с помощью клиента Teradata SQL Assistant), но у меня возникают проблемы с пониманием изменения синтаксиса. полагаю, должно быть.
В настоящее время против Oracle он генерирует список «родительского» оборудования с соответствующими запланированными работами, а также генерирует любые запланированные работы, связанные с «дочерними» идентификаторами оборудования.
SELECT
EquipmentSurfaceAssetBK AS "DEPARTMENT",
ParentEquipmentCodeBK AS "PARENT",
EquipmentCodeBK AS "POSITION",
EquipmentDescription AS "POSITION_DESC",
EquipmentCostCode AS "COSTCODE",
EqPMCodeBK AS "PM",
PMDescription AS "PM_DESC",
PMWorkOrderJobType AS "PM_CLASS",
EqPMAssignedToResourceBK AS "PM_ASSIGNED",
EqPMAssignedBy AS "PM_SCHEDULER",
EqPMDueDate AS "NEXT_DUE",
EQPMDeactivatedDate AS "DEACTIVED_DATE",
EqPMFrequency AS "FREQUENCY",
EQPMFrequencyUOM AS "FREQ_UOM"
FROM (IDW_PL_SURFACEMAINTENANCE.DIMEquipmentPM JOIN IDW_PL_SURFACEMAINTENANCE.DIMSurfaceEquipment ON IDW_PL_SURFACEMAINTENANCE.DIMEquipmentPM.EqPMEquipmentCodeBK = IDW_PL_SURFACEMAINTENANCE.DIMSurfaceEquipment.EquipmentCodeBK)
JOIN IDW_PL_SURFACEMAINTENANCE.DIMSurfacePM ON IDW_PL_SURFACEMAINTENANCE.DIMSurfacePM.PMCodeBK = IDW_PL_SURFACEMAINTENANCE.DIMEquipmentPM.EqPMCodeBK
WHERE IDW_PL_SURFACEMAINTENANCE.DIMEquipmentPM.EqPMCodeBK IS NOT NULL
START
WITH ParentEquipmentCodeBK IN
(Select
EquipmentCodeBK
From IDW_PL_SURFACEMAINTENANCE.DIMSurfaceEquipment
Where EquipmentCodeBK LIKE 'SA-PLT-WP')
CONNECT BY PRIOR EquipmentCodeBK = ParentEquipmentCodeBK
ORDER BY PARENT