Heim >Datenbank >MySQL-Tutorial >Wie verwende ich die ORDER BY-Klausel bei der Berechnung von Daten?

Wie verwende ich die ORDER BY-Klausel bei der Berechnung von Daten?

PHPz
PHPznach vorne
2023-09-03 14:29:02844Durchsuche

在计算日期时如何使用 ORDER BY 子句?

Wenn wir bei der Berechnung von Daten die ORDER BY-Klausel verwenden, ist es einfacher, Datensätze zu finden. Um es zu verstehen, erhalten wir die Daten aus der Tabelle „Collegedetail“ wie folgt:

mysql> Select * from Collegedetail;
+------+---------+------------+
| ID   | Country | Estb       |
+------+---------+------------+
| 111  | INDIA   | 2010-05-01 |
| 130  | INDIA   | 1995-10-25 |
| 139  | USA     | 1994-09-25 |
| 1539 | UK      | 2001-07-23 |
| 1545 | Russia  | 2010-07-30 |
+------+---------+------------+
5 rows in set (0.00 sec)

Nehmen wir nun an, wir möchten die Anzahl der Jahre der Geschichte einer Hochschule berechnen, dann kann dies wie folgt erfolgen:

mysql> Select ID, estb, CURDATE(),((YEAR(CURDATE())-YEAR(estb))-(RIGHT(CURDATE(),5)<RIGHT(estb,5))) AS &#39;YEARS_OLD&#39; from collegedetail;
+------+------------+------------+-----------+
| ID   | estb       | CURDATE()  | YEARS_OLD |
+------+------------+------------+-----------+
| 111  | 2010-05-01 | 2017-11-30 |         7 |
| 130  | 1995-10-25 | 2017-11-30 |        22 |
| 139  | 1994-09-25 | 2017-11-30 |        23 |
| 1539 | 2001-07-23 | 2017-11-30 |        16 |
| 1545 | 2010-07-30 | 2017-11-30 |         7 |
+------+------------+------------+-----------+
5 rows in set (0.00 sec)

Wenn wir berechnen die Anzahl der Gründungsjahre einer Hochschule. Unsere Suche wird mit der folgenden ORDER BY-Klausel bequemer:

mysql> Select ID, estb, CURDATE(),((YEAR(CURDATE())-YEAR(estb))-(RIGHT(CURDATE(),5)<RIGHT(estb,5))) AS &#39;YEARS_OLD&#39; from collegedetail ORDER BY YEARS_OLD;
+------+------------+------------+-----------+
| ID   | estb       | CURDATE()  | YEARS_OLD |
+------+------------+------------+-----------+
| 111  | 2010-05-01 | 2017-11-30 |         7 |
| 1545 | 2010-07-30 | 2017-11-30 |         7 |
| 1539 | 2001-07-23 | 2017-11-30 |        16 |
| 130  | 1995-10-25 | 2017-11-30 |        22 |
| 139  | 1994-09-25 | 2017-11-30 |        23 |
+------+------------+------------+-----------+
5 rows in set (0.01 sec)

Die obige Ergebnismenge zeigt, dass wir sehr einfach nach der ältesten Universität suchen können, indem wir die ORER BY-Klausel mit „ JAHRE_ALT". Wir können auch das Schlüsselwort DESC mit der Klausel ORDER BY verwenden, das die älteste Universität in der oberen Zeile zurückgibt, wie unten gezeigt -

mysql> Select ID, estb, CURDATE(),((YEAR(CURDATE())-YEAR(estb))-(RIGHT(CURDATE(),5)<RIGHT(estb,5))) AS &#39;YEARS_OLD&#39; from collegedetail ORDER BY YEARS_O
LD DESC;
+------+------------+------------+-----------+
| ID   | estb       | CURDATE()  | YEARS_OLD |
+------+------------+------------+-----------+
| 139  | 1994-09-25 | 2017-11-30 |        23 |
| 130  | 1995-10-25 | 2017-11-30 |        22 |
| 1539 | 2001-07-23 | 2017-11-30 |        16 |
| 111  | 2010-05-01 | 2017-11-30 |         7 |
| 1545 | 2010-07-30 | 2017-11-30 |         7 |
+------+------------+------------+-----------+
5 rows in set (0.00 sec)

Das obige ist der detaillierte Inhalt vonWie verwende ich die ORDER BY-Klausel bei der Berechnung von Daten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen