2016-11-14 3 views
-2

Ich habe die folgende Tabellenstruktur ..So wählen Sie oben 3 Termine SQL

id title Date 
1  Abc  14 Nov 2016 
2  Abc  14 Nov 2016 
3  Abc  13 Nov 2016 
4  Abc  13 Nov 2016 
5  Abc  13 Nov 2016 
6  Abc  12 Nov 2016 
7  Abc  12 Nov 2016 
8  Abc  11 Nov 2016 
9  Abc  11 Nov 2016 

Wie nur Daten von Top-3 Termine auswählen ... mittels Daten von Spalten Datum als 14,13, 12.

oder 3 Tage, die nächsten sein .. wie nur Daten von 13,12,11 oder nur 12,11

keine Ahnung bekommen, wie es zu machen .. MYSQL

Antwort

4

mit Join mit einer Unterabfrage, die die Top 3 Daten erhält.

SELECT a.* 
FROM YourTable AS a 
JOIN (SELECT DISTINCT Date 
     FROM YourTable 
     ORDER BY Date DESC 
     LIMIT 3) AS b 
ON a.Date = b.Date 
+0

Nicht nur Top-3 .. einige allgemeine Anfrage .. bekommen nächsten drei Tage, sein kann wie 13,12,11 oder 13 und 12 nur –

+1

Sie können ersetzen 'LIMIT 3' mit dem, was Kriterien, die Sie möchte, wie 'LIMIT 3,1 'mit dem nächsthöchsten beginnen. – Barmar

1
SELECT DISTINCT DATE FROM TableName ORDER BY DATE DESC LIMIT 3; 
+1

Dies wird nur Daten geben .. nicht die Daten .. und nur 1 Eintrag pro Tag. –

Verwandte Themen