Ich habe eine Tabelle mit Daten, die Scans in einem Gebäude speichert, und das enthält weit über eine Million Zeilen von Daten. Ich versuche, eine temporäre Statusspalte innerhalb dieser Abfrage hinzuzufügen, die die Scans auf einer täglichen Basis zählt. Für die Zwecke dieser Frage lässt dies als Tabelle Hauptdaten verwenden:Hinzufügen eines Zählers nach Datum, Benutzer pro Tag zu einer Abfrage
CREATE TABLE DataTable (DataTableID INT IDENTITY(1,1) NOT NULL,
User VARCHAR(50),
EventTime DATETIME)
von diesem Ich habe es verengt nur die Scans für heute zeigen:
SELECT * FROM DataTable
WHERE CONVERT(DATE,EventTime) = CONVERT(DATE, SYSDATETIME())
Es ist an dieser Stelle dem ich eine Statusspalte zu dieser Abfrage hinzufügen möchte. Der Spalt Status:
- WENN ODD - bedeutet, dass die Person in ist das Gebäude
WENN EVEN - bedeutet, dass die Person nicht im Gebäude ist
(Dies ist einfach ein ganzzahliges Feld, das bei 1 beginnt und an diesem Tag um 1 erhöht wird, PRO USER). Wie würde ich das machen?
Ich will diese eine Ansicht machen, nachdem so ihr Wert für den Fall, in denen dies die Syntax Abfrage betrifft
- Auch seine erwähnenswert, dass ich eine Statusspalte auf die Haupttabelle hinzufügen kann nicht, da dies würde verhindern das Türzugriffsprogramm funktioniert, sonst würde ich hier etwas hinzufügen, um das zu kontrollieren.
Beispiel DATA:
DataTableID User EventTime Status
1 Joe 30/08/2016 09:00:00 1
2 Alan 30/08/2016 08:45:00 1
3 John 30/08/2016 09:02:00 1
4 Steven 30/08/2016 07:30:00 1
5 Joe 30/08/2016 11:00:00 2
6 Mike 30/08/2016 17:30:00 1
7 Joe 30/08/2016 12:00:00 3
Bitte zeigen Sie einige Beispieldaten und erwartetes Ergebnis als Text, erklären mit Beispielen nicht Wörter – TheGameiswar
was ist mit "SELECT als" Status "VON DataTable WHERE CONVERT (DATUM, EventTime) = CONVERT (DATUM, SYSDATETIME ()) " –
Was soll * in * dieser Statusspalte sein? – Blorgbeard