erneut aus Wenn Sie sich mit großen, komplexen SQL -Abfragen befassen, werden Berechnungsfelder wiederverwendet, um die Duplikation zu vermeiden und die Lesbarkeit zu verbessern. In MySQL können Benutzervariablen verwendet werden, um diesen Zweck zu erreichen.
Betrachten Sie das folgende Beispiel:
Diese Abfrage versucht, das Berechnungsfeld Total_Sale im Ausdruck F1_percent wiederzuverwenden. MySQL gibt jedoch den Fehler "Unbekannter Liste" zurück, da Total_Sale nicht in der Verkaufstabelle enthalten ist.
<code class="language-sql">SELECT s.f1 + s.f2 as total_sale, s.f1 / total_sale as f1_percent FROM sales s</code>
Um dieses Problem zu lösen, können wir verwenden: = Das Berechnungssymbol gibt der Benutzervariablen den Berechnungswert an:
Durch Add@
SELECT
@total_sale := s.f1 + s.f2 as total_sale,
s.f1 / @total_sale as f1_percent
FROM sales s
Es ist zu beachten, dass diese Methode, obwohl wir es uns ermöglichen, das Berechnungsfeld wiederzuverwenden, aber auch einige Orte, die aufmerksam sind. Gemäß dem MySQL -Dokument ist der Wert der Zuordnung und Lesen der Benutzervariablen in derselben Anweisung ein unblätterbares Verhalten, das unerwartete Ergebnisse erzielen kann. Daher wird empfohlen, diese Technologie sorgfältig einzusetzen und bei Bedarf nur bei Bedarf zu verwenden.
Das obige ist der detaillierte Inhalt vonWie kann ich berechnete Felder in MySQL-SELECT-Abfragen wiederverwenden, um die Lesbarkeit zu verbessern und Wiederholungen zu vermeiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!