Heim > Datenbank > MySQL-Tutorial > Wie kann ich eine berechnete Spalte basierend auf einer anderen Spalte in MySQL erstellen?

Wie kann ich eine berechnete Spalte basierend auf einer anderen Spalte in MySQL erstellen?

Mary-Kate Olsen
Freigeben: 2025-01-17 08:06:12
Original
528 Leute haben es durchsucht

How Can I Create a Calculated Column Based on Another Column in MySQL?

Ableiten neuer Daten in MySQL: Berechnete Spalten

Datenbankmanagement erfordert oft die Generierung zusätzlicher Daten auf Basis vorhandener Informationen. MySQL bietet eine leistungsstarke Lösung: berechnete Spalten. Diese Spalten berechnen ihre Werte automatisch aus anderen Spalten innerhalb derselben Tabelle, sodass keine manuellen Berechnungen erforderlich sind.

Nutzung der von MySQL generierten Spalten

MySQL-Versionen 5.7.6 und höher unterstützen Generierte Spalten, eine Funktion, die Spaltenwerte basierend auf anderen Spalten dynamisch berechnet. Diese Funktionalität ähnelt einer VIEW, hat jedoch den entscheidenden Unterschied, dass generierte Spalten integraler Bestandteil der Tabellenstruktur sind.

Virtuell vs. gespeichert: Den richtigen Ansatz wählen

Generierte Spalten gibt es in zwei Varianten:

  • Virtuelle Spalten: Berechnen Sie Werte bei Bedarf, nur wenn auf eine Zeile zugegriffen wird.
  • Gespeicherte Spalten: Berechnen Sie Werte beim Einfügen oder Aktualisieren einer Zeile und speichern Sie das Ergebnis.

Ein entscheidender Unterschied besteht darin, dass gespeicherte generierte Spalten im Gegensatz zu virtuellen Spalten indizierbar sind.

Beispiel: Berechnung des halben Wertes

Lassen Sie uns dies anhand eines praktischen Beispiels veranschaulichen. Angenommen, wir benötigen eine Spalte, die den halben Wert einer vorhandenen „Wert“-Spalte darstellt. Verwendung gespeicherter generierter Spalten:

<code class="language-sql">CREATE TABLE my_table (
  id INT PRIMARY KEY,
  value INT,
  half_value AS (value / 2) STORED
);

INSERT INTO my_table (id, value) VALUES
  (1, 6),
  (2, 70);</code>
Nach dem Login kopieren

Dadurch wird my_table mit einer id-, einer value- und einer half_value-Spalte erstellt. half_value wird automatisch ausgefüllt und aktualisiert, wenn sich die Spalte value ändert. Das Schlüsselwort STORED stellt sicher, dass der berechnete Wert dauerhaft gespeichert wird.

Das obige ist der detaillierte Inhalt vonWie kann ich eine berechnete Spalte basierend auf einer anderen Spalte in MySQL erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage