Inhaltsverzeichnis
MySQL MAX函数示例
MySQL MAX函数在子查询中
具有GROUP BY子句的MySQL MAX" >具有GROUP BY子句的MySQL MAX
具有HAVING子句的MySQL MAX
MySQL MAX-Funktionsbeispiel
MySQL MAX-Funktion in Unterabfrage
MySQL MAX mit HAVING-Klausel
Heim Datenbank MySQL-Tutorial So fragen Sie den Maximalwert in MySQL ab

So fragen Sie den Maximalwert in MySQL ab

Dec 31, 2021 pm 03:10 PM
mysql 最大值

In MySQL können Sie die Anweisung „SELECT“ und die Funktion MAX() verwenden, um den Maximalwert in einer Reihe von Werten zurückzugeben. Die Syntax lautet „SELECT MAX(DISTINCT expression) FROM data Tabellenname;".

So fragen Sie den Maximalwert in MySQL ab

Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.

In MySQL können Sie die Anweisung „SELECT“ und die Funktion MAX() verwenden, um den Maximalwert abzufragen.

Die MySQL-Funktion MAX() gibt den Maximalwert in einer Reihe von Werten zurück. Die Funktion MAX() ist bei vielen Abfragen sehr praktisch, beispielsweise beim Ermitteln der Höchstmenge, des teuersten Produkts und der Höchstzahlung eines Kunden. MAX()函数返回一组值中的最大值。MAX()函数在许多查询中非常方便,例如查找最大数量,最昂贵的产品以及客户的最大付款。

MAX()函数的语法如下:

MAX(DISTINCT expression);
Nach dem Login kopieren

如果添加DISTINCT运算符,则MAX函数返回不同值的最大值,它与所有值的最大值相同。 这意味着DISTINCT运算符不会对MAX函数产生任何影响(用不用DISTINCT运算符都可以)。

请注意,DISTINCT运算符在其他聚合函数(如COUNT,SUM和AVG)中生效。

MySQL MAX函数示例

我们来看看示例数据库(yiibaidb)中的payments表,其表结构如下所示 -

mysql> desc payments;
+----------------+---------------+------+-----+---------+-------+
| Field          | Type          | Null | Key | Default | Extra |
+----------------+---------------+------+-----+---------+-------+
| customerNumber | int(11)       | NO   | PRI | NULL    |       |
| checkNumber    | varchar(50)   | NO   | PRI | NULL    |       |
| paymentDate    | date          | NO   |     | NULL    |       |
| amount         | decimal(10,2) | NO   |     | NULL    |       |
+----------------+---------------+------+-----+---------+-------+
4 rows in set
Nach dem Login kopieren

要在payments表中获得最大的付款,您可以使用以下查询:

SELECT 
    MAX(amount)
FROM
    payments;
Nach dem Login kopieren

执行上面查询语句,得到以下结果 -

mysql> SELECT 
    MAX(amount)
FROM
    payments;
+-------------+
| MAX(amount) |
+-------------+
| 120166.58   |
+-------------+
1 row in set
Nach dem Login kopieren

MySQL MAX函数在子查询中

不仅要获得最大的付款金额,还要获得其他付款信息,如客户编号,支票号码和付款日期,您可以在子查询中使用MAX函数,如下所示:

SELECT 
    *
FROM
    payments
WHERE
    amount = (
 SELECT 
            MAX(amount)
        FROM
            payments);
Nach dem Login kopieren

执行上面查询语句,得到以下结果 -

+----------------+-------------+-------------+-----------+
| customerNumber | checkNumber | paymentDate | amount    |
+----------------+-------------+-------------+-----------+
|            141 | JE105477    | 2015-03-18  | 120166.58 |
+----------------+-------------+-------------+-----------+
1 row in set
Nach dem Login kopieren

上面查询语句是怎么运行的?

  • 子查询返回所有的最大付款金额。
  • 外部查询获取的金额等于从子查询返回的最大金额的其他相关付款信息。

不使用MAX函数的另一种方法是使用ORDER BY子句以降序对结果集进行排序,并使用LIMIT子句获取第一行,如下查询:

SELECT 
    *
FROM
    payments
ORDER BY amount DESC
LIMIT 1;
Nach dem Login kopieren

执行上面查询语句,得到以下结果 -

+----------------+-------------+-------------+-----------+
| customerNumber | checkNumber | paymentDate | amount    |
+----------------+-------------+-------------+-----------+
|            141 | JE105477    | 2015-03-18  | 120166.58 |
+----------------+-------------+-------------+-----------+
1 row in set
Nach dem Login kopieren

如果您没有在amount列上创建索引,则第二个查询执行速度更快,因为它会检查payments表中的所有行,而第一个查询会检查payments表中的所有行两次,一次是在子查询中,另一次在外部查询中。 但是,如果amount列被索引,则第一个查询将执行得更快。

要找到每个组的最大值,您可以在SELECT语句中使用MAX函数与GROUP BY子句。

对于每个客户,查询获得客户已支付的最大付款,可使用以下查询:

SELECT 
    customerNumber, MAX(amount)
FROM
    payments
GROUP BY customerNumber
ORDER BY MAX(amount);
Nach dem Login kopieren

执行上面查询语句,得到以下查询结果 -

+----------------+-------------+
| customerNumber | MAX(amount) |
+----------------+-------------+
|            219 | 4465.85     |
|            198 | 9658.74     |
|            381 | 14379.9     |
|            103 | 14571.44    |
|            473 | 17746.26    |
|            362 | 18473.71    |
******* 此处省略一大波数据 ******
|            148 | 105743      |
|            124 | 111654.4    |
|            141 | 120166.58   |
+----------------+-------------+
98 rows in set
Nach dem Login kopieren

具有HAVING子句的MySQL MAX

您可以在HAVING子句中使用GROUP BY子句中的MAX函数,以根据指定的条件为分组添加过滤器。

例如,以下查询查找每个客户的最大付款; 并根据返回款项,如下面查询语句,只查询金额超过80000

Die Syntax der Funktion MAX() lautet wie folgt:

SELECT 
    customerNumber, MAX(amount)
FROM
    payments
GROUP BY customerNumber
HAVING MAX(amount) > 80000;
Nach dem Login kopieren

Wenn Sie den Operator DISTINCT hinzufügen, gibt die Funktion MAX zurück Maximalwert verschiedener Werte. Es ist dasselbe wie das Maximum aller Werte. Das bedeutet, dass der Operator DISTINCT keinen Einfluss auf die Funktion MAX hat (es spielt keine Rolle, ob der Operator DISTINCT verwendet wird oder nicht). .

Bitte beachten Sie, dass der DISTINCT-Operator in anderen Aggregatfunktionen wie COUNT, SUM und AVG funktioniert.

MySQL MAX-Funktionsbeispiel

Werfen wir einen Blick auf die Tabelle zahlungen in der Beispieldatenbank ( yiibaidb), seine Tabellenstruktur ist wie folgt: 🎜
+----------------+-------------+
| customerNumber | MAX(amount) |
+----------------+-------------+
|            114 | 82261.22    |
|            124 | 111654.4    |
|            141 | 120166.58   |
|            148 | 105743      |
|            167 | 85024.46    |
|            239 | 80375.24    |
|            321 | 85559.12    |
+----------------+-------------+
7 rows in set
Nach dem Login kopieren
🎜 Um die maximale Zahlung in der Tabelle zahlungen zu erhalten, können Sie die folgende Abfrage verwenden: 🎜rrreee🎜Führen Sie die obige Abfrageanweisung aus und erhalten Sie die folgenden Ergebnisse -🎜rrreee

MySQL MAX-Funktion in Unterabfrage

🎜Nicht nur um den maximalen Zahlungsbetrag zu erhalten, sondern auch um andere Zahlungsinformationen wie z B. Kundennummer, Schecknummer und Zahlungsdatum, können Sie die Funktion MAX in einer Unterabfrage verwenden, wie unten gezeigt: 🎜rrreee🎜Führen Sie die obige Abfrageanweisung aus und erhalten Sie die folgenden Ergebnisse – 🎜rrreee🎜Wie funktioniert das? Wird die obige Abfrageanweisung ausgeführt? 🎜
  • Unterabfrage gibt alle maximalen Zahlungsbeträge zurück.
  • Die äußere Abfrage ruft andere zugehörige Zahlungsinformationen für einen Betrag ab, der dem von der Unterabfrage zurückgegebenen Höchstbetrag entspricht.
🎜Eine Alternative dazu, die Funktion MAX nicht zu verwenden, besteht darin, die Klausel ORDER BY zu verwenden, um die Ergebnismenge in absteigender Reihenfolge zu sortieren und LIMIT-Klausel ruft die erste Zeile ab, fragen Sie wie folgt ab: 🎜rrreee🎜Führen Sie die obige Abfrageanweisung aus und erhalten Sie die folgenden Ergebnisse -🎜rrreee🎜Wenn Sie keinen Index für den amount erstellen Spalte, dann wird die zweite Abfrage schneller ausgeführt, da alle Zeilen in der Tabelle zahlungen überprüft werden, während die erste Abfrage alle Zeilen in der Tabelle zahlungen zweimal überprüft, nämlich einmal der Unterabfrage und ein anderes Mal in der äußeren Abfrage. Wenn die Spalte amount jedoch indiziert ist, wird die erste Abfrage schneller ausgeführt. 🎜

MySQL MAX mit GROUP BY-Klausel🎜Um den Maximalwert jeder Gruppe zu ermitteln, können Sie die Funktion MAX mit der Klausel GROUP BY in der Anweisung SELECT verwenden. 🎜🎜Fragen Sie für jeden Kunden die maximale Zahlung ab, die der Kunde gezahlt hat. Sie können die folgende Abfrage verwenden: 🎜rrreee🎜Führen Sie die obige Abfrageanweisung aus und erhalten Sie die folgenden Abfrageergebnisse: 🎜rrreee

MySQL MAX mit HAVING-Klausel

🎜Sie können die GROUP BY-Klausel in der HAVING-Klausel >MAX verwenden. code>-Funktion zum Hinzufügen von Filtern zu Gruppen basierend auf angegebenen Bedingungen. 🎜🎜Mit der folgenden Abfrage wird beispielsweise die maximale Zahlung für jeden Kunden ermittelt. Basierend auf dem zurückgegebenen Betrag werden, wie in der folgenden Abfrageanweisung gezeigt, nur Abfragen für Zahlungen durchgeführt, die 80000 überschreiten obige Abfrageanweisung und erhalten Sie die folgenden Ergebnisse -🎜rrreee🎜【Verwandte Empfehlung: 🎜MySQL-Video-Tutorial🎜】🎜

Das obige ist der detaillierte Inhalt vonSo fragen Sie den Maximalwert in MySQL ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie man phpmyadmin öffnet Wie man phpmyadmin öffnet Apr 10, 2025 pm 10:51 PM

Sie können PhpMyAdmin in den folgenden Schritten öffnen: 1. Melden Sie sich beim Website -Bedienfeld an; 2. Finden und klicken Sie auf das Symbol phpmyadmin. 3. Geben Sie MySQL -Anmeldeinformationen ein; 4. Klicken Sie auf "Login".

MySQL: Eine Einführung in die beliebteste Datenbank der Welt MySQL: Eine Einführung in die beliebteste Datenbank der Welt Apr 12, 2025 am 12:18 AM

MySQL ist ein Open Source Relational Database Management -System, das hauptsächlich zum schnellen und zuverlässigen Speicher und Abrufen von Daten verwendet wird. Sein Arbeitsprinzip umfasst Kundenanfragen, Abfragebedingungen, Ausführung von Abfragen und Rückgabergebnissen. Beispiele für die Nutzung sind das Erstellen von Tabellen, das Einsetzen und Abfragen von Daten sowie erweiterte Funktionen wie Join -Operationen. Häufige Fehler umfassen SQL -Syntax, Datentypen und Berechtigungen sowie Optimierungsvorschläge umfassen die Verwendung von Indizes, optimierte Abfragen und die Partitionierung von Tabellen.

Mysqls Platz: Datenbanken und Programmierung Mysqls Platz: Datenbanken und Programmierung Apr 13, 2025 am 12:18 AM

Die Position von MySQL in Datenbanken und Programmierung ist sehr wichtig. Es handelt sich um ein Open -Source -Verwaltungssystem für relationale Datenbankverwaltung, das in verschiedenen Anwendungsszenarien häufig verwendet wird. 1) MySQL bietet effiziente Datenspeicher-, Organisations- und Abruffunktionen und unterstützt Systeme für Web-, Mobil- und Unternehmensebene. 2) Es verwendet eine Client-Server-Architektur, unterstützt mehrere Speichermotoren und Indexoptimierung. 3) Zu den grundlegenden Verwendungen gehören das Erstellen von Tabellen und das Einfügen von Daten, und erweiterte Verwendungen beinhalten Multi-Table-Verknüpfungen und komplexe Abfragen. 4) Häufig gestellte Fragen wie SQL -Syntaxfehler und Leistungsprobleme können durch den Befehl erklären und langsam abfragen. 5) Die Leistungsoptimierungsmethoden umfassen die rationale Verwendung von Indizes, eine optimierte Abfrage und die Verwendung von Caches. Zu den Best Practices gehört die Verwendung von Transaktionen und vorbereiteten Staten

Warum MySQL verwenden? Vorteile und Vorteile Warum MySQL verwenden? Vorteile und Vorteile Apr 12, 2025 am 12:17 AM

MySQL wird für seine Leistung, Zuverlässigkeit, Benutzerfreundlichkeit und Unterstützung der Gemeinschaft ausgewählt. 1.MYSQL bietet effiziente Datenspeicher- und Abruffunktionen, die mehrere Datentypen und erweiterte Abfragevorgänge unterstützen. 2. Übernehmen Sie die Architektur der Client-Server und mehrere Speichermotoren, um die Transaktion und die Abfrageoptimierung zu unterstützen. 3. Einfach zu bedienend unterstützt eine Vielzahl von Betriebssystemen und Programmiersprachen. V.

So stellen Sie eine Verbindung zur Datenbank von Apache her So stellen Sie eine Verbindung zur Datenbank von Apache her Apr 13, 2025 pm 01:03 PM

Apache verbindet eine Verbindung zu einer Datenbank erfordert die folgenden Schritte: Installieren Sie den Datenbanktreiber. Konfigurieren Sie die Datei web.xml, um einen Verbindungspool zu erstellen. Erstellen Sie eine JDBC -Datenquelle und geben Sie die Verbindungseinstellungen an. Verwenden Sie die JDBC -API, um über den Java -Code auf die Datenbank zuzugreifen, einschließlich Verbindungen, Erstellen von Anweisungen, Bindungsparametern, Ausführung von Abfragen oder Aktualisierungen und Verarbeitungsergebnissen.

So starten Sie MySQL von Docker So starten Sie MySQL von Docker Apr 15, 2025 pm 12:09 PM

Der Prozess des Startens von MySQL in Docker besteht aus den folgenden Schritten: Ziehen Sie das MySQL -Image zum Erstellen und Starten des Containers an, setzen

CentOS installieren MySQL CentOS installieren MySQL Apr 14, 2025 pm 08:09 PM

Die Installation von MySQL auf CentOS umfasst die folgenden Schritte: Hinzufügen der entsprechenden MySQL Yum -Quelle. Führen Sie den Befehl mySQL-server aus, um den MySQL-Server zu installieren. Verwenden Sie den Befehl mySQL_SECURE_INSTALLATION, um Sicherheitseinstellungen vorzunehmen, z. B. das Festlegen des Stammbenutzerkennworts. Passen Sie die MySQL -Konfigurationsdatei nach Bedarf an. Tune MySQL -Parameter und optimieren Sie Datenbanken für die Leistung.

MySQLs Rolle: Datenbanken in Webanwendungen MySQLs Rolle: Datenbanken in Webanwendungen Apr 17, 2025 am 12:23 AM

Die Hauptaufgabe von MySQL in Webanwendungen besteht darin, Daten zu speichern und zu verwalten. 1.Mysql verarbeitet effizient Benutzerinformationen, Produktkataloge, Transaktionsunterlagen und andere Daten. 2. Durch die SQL -Abfrage können Entwickler Informationen aus der Datenbank extrahieren, um dynamische Inhalte zu generieren. 3.Mysql arbeitet basierend auf dem Client-Server-Modell, um eine akzeptable Abfragegeschwindigkeit sicherzustellen.

See all articles