sql >> Databasteknik >  >> RDS >> Mysql

kan temporära MySQL-variabler användas i WHERE-satsen?

Du måste tilldela ett alias och testa det i HAVING klausul:

SELECT id, @var := id * 2 AS id_times_2
FROM user
HAVING id_times_2 < 10

Observera att om du bara använder formeln för filtrering, inte för att kommunicera interna resultat från en rad till nästa, behöver du inte variabeln alls. Du kan skriva:

SELECT id, id * 2 AS id_times_2
FROM user
HAVING id_times_2 < 10


  1. lastInsertId fungerar inte i Postgresql

  2. Kryssrutorna checkar ut slumpmässigt

  3. Hur kan jag sammanfoga två tabeller med olika antal rader i MySQL?

  4. Oracle - Uppdatera rader med ett minvärde i gruppen för en kolumn från en annan tabell