Wie würde ich den CQL schreiben, um den neuesten Satz von Daten aus jeder Zeile zu bekommen?CQL mit einer breiten Reihe - wie man am neuesten Satz kommt?
Ich untersuche Übergang von MSSQL zu Cassandra und fangen an, die Konzepte zu begreifen. Viel Forschung hat enorm helfen, aber ich habe nicht Antwort auf diese Frage gefunden (ich weiß, dass es einen Weg geben muss):
CREATE TABLE WideData {
ID text,
Updated timestamp,
Title text,
ReportData text,
PRIMARY KEY (ID, Updated)
} WITH CLUSTERING ORDER (Updated DESC)
INSERT INTO WideData (ID, Updated, Title, ReportData) VALUES ('aaa', NOW, 'Title', 'Blah blah blah blah')
INSERT INTO WideData (ID, Updated, Title, ReportData) VALUES ('bbb', NOW, 'Title', 'Blah blah blah blah')
1 Minute warten:
INSERT INTO WideData (ID, Updated, Title, ReportData) VALUES ('bbb', NOW, 'Title 2', 'Blah blah blah blah')
Warte 3 Minuten:
INSERT INTO WideData (ID, Updated, Title, ReportData) VALUES ('aaa', NOW, 'Title 2', 'Blah blah blah blah')
5 Minuten warten:
INSERT INTO WideData (ID, Updated, Title, ReportData) VALUES ('aaa', NOW, 'Title 3', 'Blah blah blah blah')
Wie würde ich den CQL schreiben, um den neuesten Datensatz aus jeder Zeile zu erhalten?
SELECT ID, Title VON WideRow - gibt mir 5 Zeilen, wie es die Daten für mich dreht.
Grunde möchte ich die Ergebnisse für (SELECT ID, Titel FROM WideRow WHERE .....) sein:
ID Title
aaa, Title3
bbb, Title2
Auch ist es eine Möglichkeit, eine Zählung der Anzahl der Datensätze zu erhalten in einer breiten Reihe?
Im Wesentlichen das Äquivalent von TSQL: SELECT ID, COUNT (*) FROM Tabelle GROUP BY ID
ID Count
aaa 3
bbb 2
Dank
Auch alle Verweise mehr über diese Art von Anfragen auch erkannt werden, würde lernen .