2016-04-28 5 views
-1

Okay Leute, ich versuche, eine Ansicht in SQL Server für die beliebtesten Zahlungsmethode zu erstellenSQL Server, Ansichten

CREATE VIEW payType 

AS 

SELECT SaleID, PayID 
FROM tblSales 
GROUP BY 
tblSales.SaleID, tblSales.PayID 
+1

Wie berechnen Sie den% jeder PayID? – MusicLovingIndianGirl

+0

Zeigen Sie uns einige Beispieltabellendaten und das erwartete Ergebnis. – jarlh

+0

Weitere interessante Tabellen? – jarlh

Antwort

2

Ich gehe davon aus, dass Ihr für die Anzahl der SaleID sucht, die jeweils verwendet haben Zahlungsmethode, Ihre Select-Anweisung möchte so etwas sein;

SELECT a.PayID 
    ,COUNT(a.SaleID) Sales 
    ,(COUNT(a.SaleID)/b.Tot)*100 = PercentOfTotal 
FROM tblSales a 
JOIN (
    SELECT SaleID 
     ,COUNT(PayID) Tot 
    FROM tbl.Sales 
    GROUP BY SaleID 
    ) b ON a.SaleID = b.SaleID 
GROUP BY a.PayID 
ORDER BY COUNT(a.SaleID) DESC 
+0

Danke Rich, kannst du erklären, wofür 'a' und 'b' benutzt werden? – Zank

+0

Sie sind Aliase auf den Tabellen, es macht es einfacher zu sehen, welche Daten wo verwendet werden. Sie können es auch so zeigen; Von tblSales als –

+0

Große Erklärung, ich werde auch fragen. Der "b.Tot" wäre eine neue Entität, die ich erstellen müsste, oder kann das nur innerhalb der Ansicht sein? Was ist der Zweck? – Zank

Verwandte Themen