PDA

View Full Version : [mysql]query e alias


MEMon
27-06-2007, 14:04
Ragazzi è possibile avere nel select degli alias impostati sempre nello stesso select?

Esempio:
SELECT giocatore as player, winner-loser as wins, wins*3 as points FROM ecc ecc WHERE ecc ecc

Ecco, "wins*3 as points" non me lo fa fare perchè dice che wins non esiste nella tabella.
Solo che a me serve proprio quel valore... questo è solo un esempio

MEMon
27-06-2007, 14:23
Non funzia nemmeno se lo metto in GROUP BY...
Non ditemi che mi devo riscrivere le funzioni... :cry:

wingman87
27-06-2007, 14:33
Non puoi mettere semplicemente winner-loser*3 as points?

cionci
27-06-2007, 15:20
Non l'ho mai fatto...magari ci sarà qualche trucchetto per farlo...il primo che mi viene in mente è spostare la select in una sottoquery nel from e rinominare dalla nuova select gli elementi sfruttando anche i nomi precedenti...

MEMon
27-06-2007, 15:20
eh no, a parte che quello è solo un esempio, devo avere entrambi, sia wins, sia 3*wins, ma ripeto è solo un esempio, la query è mooooolto + lunga

kk3z
27-06-2007, 20:27
Non è possibile farlo nelle select:
http://dev.mysql.com/doc/refman/4.1/en/problems-with-alias.html

La soluzione è usare le variabili:
SELECT giocatore as player, @wins := winner-loser as wins, @wins*3 as points FROM ecc ecc WHERE ecc ecc

cionci
27-06-2007, 23:05
Le variabili utente...perché non ci ho pensato prima :muro:
Sono un po' arrugginito con MySQL :D