Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Kann ich ein berechnetes Feld in einer SELECT-Abfrage wiederverwenden?

Ja, Sie können Variablen wiederverwenden. So geht's:

SELECT 
    @total_sale := s.f1 + s.f2 as total_sale, 
    s.f1 / @total_sale as f1_percent
FROM sales s

Lesen Sie hier mehr darüber:http://dev.mysql .com/doc/refman/5.0/en/user-variables.html

[Anmerkung:Dieses Verhalten ist undefiniert. Gemäß der MySQL-Dokumentation:]

Als allgemeine Regel sollten Sie einer Benutzervariablen niemals einen Wert zuweisen und den Wert innerhalb derselben Anweisung lesen. Sie erhalten möglicherweise die erwarteten Ergebnisse, dies ist jedoch nicht garantiert.