Comunidad Gambas-es
Sqlite.¿ Es posible ordenar por el alias del campo ? - Versión para impresión

+- Comunidad Gambas-es (https://gambas-es.org)
+-- Foro: Gambas (https://gambas-es.org/forum-3.html)
+--- Foro: Bases de Datos (https://gambas-es.org/forum-6.html)
+--- Tema: Sqlite.¿ Es posible ordenar por el alias del campo ? (/thread-620.html)



Sqlite.¿ Es posible ordenar por el alias del campo ? - Shell - 19-09-2021

Buenas!.

Esta consulta me ordena los registros por las fechas, en este caso en orden ascendente.

Código:
select strftime('%d-%m-%Y',field1) as Fecha, field2, field3 from JuegosAmiga ORDER by field1;

Como veis a la hora de mostrar el campo de las fechas le digo que me lo nombre con el "alias" Fecha.
Ahora bien. Intenté hacer esto, pero no funcionó igual.

Código:
select strftime('%d-%m-%Y',field1) as Fecha, field2, field3 from JuegosAmiga ORDER by Fecha;

Di por entendido que Fecha es como decir field1. Que es el nombre del campo real.
Parece más bien una etiqueta, no se cambia el nombre del campo. Un adorno.
Como un titulo más explicativo.

Cuando usaba la base de datos de M$ Office, creaba campos calculados y se le asignaba un nombre al campo.
Eso no quiere decir que el campo existiera como tal. Sería gracioso decirle, ordena la salida según el valor del campo calculado.
Oye, que a lo mejor era posible.

Saludos


RE: Sqlite.¿ Es posible ordenar por el alias del campo ? - gambafeliz - 19-09-2021

Hola Shell, como estas Smile

A mi si me funciona ordenar por el alias. Supongo que en tu caso sera que el alias es ambiguo con una definición de una columna de tu tabla. ¿Es posible que sea eso?

Saludos


RE: Sqlite.¿ Es posible ordenar por el alias del campo ? - jguardon - 19-09-2021

(19-09-2021, 11:58)Shell escribió: Di por entendido que Fecha es como decir field1. Que es el nombre del campo real.
Prueba así:

... ORDER BY JuegosAmiga.Fecha

Por si acaso es lo que dice gambafeliz


RE: Sqlite.¿ Es posible ordenar por el alias del campo ? - Shell - 20-09-2021

He probado desde la aplicación (por comodidad) y esto es lo que se muestra si uso el "."

[Imagen: JjjdpWg.png]

Solo muestra los tres campos que tiene la base, no muestra el alias. Y si le ingreso JuegosAmiga.Fecha da error la consulta.
Esto dice la consola de Sqlite3.
 
Cita:sqlite> select strftime('%d-%m-%Y', field1) as Fecha,field2,field3 from JuegosAmiga Order by JuegosAmiga.Fecha;
Error: no such column: JuegosAmiga.Fecha

Saludos