2016-10-18 1 views
1

Ich habe an einem kleinen Projekt gearbeitet, das so viel Code-Renovierung beinhaltet. Ich habe eine grundlegende Vertrautheit mit den alten sql Join-Symbolen, von denen ich die meisten aus stackoverflow entnommen habe, aber ich merke, dass die Struktur der Umgebung sehr anders ist als das, was ich kenne. Ich bin im Grunde auf Code, der so ähnlich aufgebaut ist, wie es in modernen SQL-Code konvertieren. Ich möchte dies für andere Menschen relevant machen, aber ich nehme an, dass die meisten Software vor Jahren aktualisiert worden wäre. Jeder Rat würde sehr geschätzt werden.Ich bin nicht vertraut damit, wie alte SQL-Join-Befehle in modernen Code konvertiert werden. * =/= *

If @SelectLevel = '' Or @SelectLevel = 'B' 
Select @SQLCmd = 
    'SELECT Stop_Number, ''B'' AS Inv_Type, Inv_Desc, ' + 
     'Box_Number AS Item_Number, BOX.Company_ID, BOX.Department_ID, BOX.Group_Id, BOX.Section_Id, ' + 
     'BOX.Media_Code, BOX.Location_Current, BOX.Location_Home, BOX.Hold_Status, BOX.Record_Type, ' + 
     'BOX.Alternate_Id, BOX.Description1, BOX.Retention_Code, BOX.Retention_type, BOX.Retention_Disposal, ' + 
     'BOX.Description2, BOX.Description3, ' + 
     'Reservation_Status, BOX.Disposition_Status ' + 
    'FROM BOX, DISPOSITION_MEMO, (SELECT Item_Type, Item_Number, MAX(Reservation_Process_Status) AS ' + 
    'Reservation_Status FROM RESERVATION GROUP BY Item_Type, Item_Number) AS RESV, ' + 
    '(SELECT Ele_Text AS Inv_Desc, Ele_Usr_Text AS Inv_Usr_Type, Ele_Action ' + 
     'FROM ELEMENT_METRICS WHERE Ele_Name = ''Inventory'' AND Ele_Type = ''Dropdown'') AS INVTYPE ' + 
    'WHERE Stop_Number = ' + Convert(Char(10),@Disposition_Number) + ' AND ' + 
     'INVTYPE.Ele_Action = ''B'' AND ' + 
     'Box_Number *= RESV.Item_Number AND RESV.Item_Type = ''B'' AND ' + 
     'BOX.Stop_Number = DISPOSITION_MEMO.Disposition_Number AND ' + 
     'BOX.Stop_Date = DISPOSITION_MEMO.Issue_Date' 
+0

'select ... from a, b' wird einfach' select ... from a join b'. Sie müssen herausfinden, welche Art von Join Sie benötigen (links/rechts/inner/etc ...), pro Join. Das wird nicht so einfach sein. –

Antwort

Verwandte Themen