Ich muss zwei Variablen implementieren, um das Datenergebnis in einer Abfrage zu speichern.Wie in einer Variablen den Wert der folgenden Abfrage speichern? SQL Server
Ich habe er Abfrage folgende:
SELECT * FROM
(SELECT location AS Location, COUNT(*) AS Trucks FROM Truck GROUP BY location) loc
OUTER APPLY
(
SELECT
COUNT(*) AS TotalOfCampaings,
SUM(CASE WHEN cc.campaing_status = 'Complete' THEN 1 ELSE 0 END) AS CampaingsWithCompleteStatus,
SUM(CASE WHEN cc.campaing_status = 'InProcess' THEN 1 ELSE 0 END) AS CampaingsWithInProcessStatus
FROM CampaingControl cc INNER JOIN Truck t ON cc.vin = t.vin
WHERE t.location = loc.location
) stat
Diese Abfrage zeigt die folgende Tabelle:
| Ort | LKW | TotalOfCampaings | CampaingsWithCompleteStatus | CampaingsWithInProcessStatus
Ich brauche eine Spalte in der hinzufügen Ende, in der neuen Spalte muss ich den Prozentsatz der Kampagnen mit dem vollständigen Status erhalten, ich habe versucht, etwas wie folgt zu tun:
Prozent = (CampaingsWithCompleteStatus/TotalOfCamapings) * 100
Aber ich weiß nicht, wie man die Werte der Abfrage speichert, um das zu tun.
Hallo, ich schätze Ihre Hilfe, aber wenn ich Werte in den Tabellen einfügen die prozentuale Spalte zeigt immer 0. – TimeToCode
Ich nehme an die beiden Werte sind ganze Zahlen, weil ich die Funktion SUMME, oder vielleicht muss ich in float umwandeln? Ich weiß nicht – TimeToCode
Bearbeitet: da sie int sind, ist das Ergebnis int auch. Um es zu lösen, verwenden Sie Trick, indem Sie mit 1.0 multiplizieren –