Ich habe diese Anfrage:Wie Sub-Abfrage-Ergebnis zweimal in der Abfrage verwenden?
UPDATE QandA SET accepted = IF (id <> :answer_id, 0, 1)
WHERE col1 = (SELECT related FROM QandA WHERE id = :answer_id) AND
col2 = (SELECT related FROM QandA WHERE id = :answer_id)
Wie Sie sehen zwei identische Unterabfragen ist. Wie kann ich diese Unterabfrage einmal schreiben und das Ergebnis zweimal verwenden?
Sie können Verwenden Sie die temporäre Tabelle, um den Wert für die Unterabfragen zu speichern, und verwenden Sie die Daten aus der temporären Tabelle in der Abfrage. –