2017-02-17 3 views
1

bekommen Wie kann ich verschiedene bekommen Page_Name diese Abfrage mitSQL Server Query Distinct PAGE_NAME

Select A.UserId,Page_Name,Region_Name, Content_Name,Chart_Src 
    from DWH_DBPages A 
    LEFT OUTER JOIN DWH_DashBoardA B ON A.sysRegionSno=B.sysRegionSno 
    LEFT OUTER JOIN DWH_DashBoardB C ON B.sysContentSno=C.sysContentSno 
    LEFT OUTER JOIN DWH_DashboardC D ON C.sysTypeSno=D.sysTypeSno 
    LEFT OUTER JOIN DWH_DashboardD E ON D.sysChartSno=E.sysChartSno 
    WHERE A.UserId = 'xxxxxxxxx' AND A.sysMenuSno = 'xxxx' 

Struktur der Tabellen

DWH_DBPages A  
=============  
sysPageSno 
Page_Name 
sysMenuSno 
Page_Status 
Parent_Div 
sysRegionSno 
UserId 
Created_Date 


DWH_DashBoardA 
============== 
sysRegionSno 
Region_Name 
Region_Type 
sysContentSno 
UserId 
Created_Date 

DWH_DashboardC 
=============== 
sysContentSno 
Content_Name 
sysTypeSno 
UserId 
Created_Date 

DWH_DashboardD 
=============== 
sysChartSno 
Chart_Name 
Chart_Src 
Chart_Procedure 
UserId 
+3

Es gibt keine Spalte PAGE_NAME in Ihrer Anfrage gestattet. –

+0

Wie können wir das sagen, ohne zu wissen, wie diese Tabellen in Ihrer DB definiert wurden, aber ich kann sagen, dass Sie nicht mehr 'Page_Name' ausgewählt haben –

+0

Scheint eine Frage zu sql und nicht C# zu sein, korrigieren Sie die Tags. – Esko

Antwort

1
select distinct(Page_Name) 
from (Select A.UserId,Page_Name,Region_Name, Content_Name,Chart_Src 
    from DWH_DBPages A 
    LEFT OUTER JOIN DWH_DashBoardA B ON A.sysRegionSno=B.sysRegionSno 
    LEFT OUTER JOIN DWH_DashBoardB C ON B.sysContentSno=C.sysContentSno 
    LEFT OUTER JOIN DWH_DashboardC D ON C.sysTypeSno=D.sysTypeSno 
    LEFT OUTER JOIN DWH_DashboardD E ON D.sysChartSno=E.sysChartSno 
    WHERE A.UserId = 'xxxxxxxxx' 
    AND A.sysMenuSno = 'xxxx')aa 
+0

Ihre Abfrage gibt diesen Fehler Msg 102, Ebene 15, Status 1, Zeile 1 Falsche Syntax in der Nähe von ')'. – Raheel

+0

bearbeitet die Antwort, versuche jetzt –

+0

ich vermisse aa :-) Danke Revathi D – Raheel