Obtenga un valor fijo en una selección

13

Necesito hacer una SELECTconsulta donde obtengo el valor del campo "dinero". El campo en realidad no existe en la base de datos. Solo necesito la consulta para devolver este campo con un valor fijo; en este caso un valor en USD.

¿Cómo devuelvo un valor constante en una SELECTdeclaración?

fedejp
fuente

Respuestas:

21

Si el valor siempre va a ser el mismo, puede hacer algo como esto:

SELECT 'USD' AS `MONEY`, a.*
  FROM INFORMATION_SCHEMA.SCHEMATA AS a

Simplemente reemplace a. * Con las columnas que desea devolver y INFORMATION_SCHEMA.SCHEMATA con el esquema y las tablas que desea consultar.

Espero que esto te sea útil.

Mr.Brownstone
fuente
Muchas gracias. Funciona de maravilla. Sólo curioso. ¿Para qué es ese último 'AS a' (después de 'FROM INFORMATION_SCHEMA.SCHEMATA')?
fedejp
No hay problema. El AS especifica un alias para la tabla, es esencialmente un nombre corto por el que puede hacer referencia a la tabla.
Mr.Brownstone
Oh, genial. No dije que pudieras usar alias para las tablas. ¡Muchas gracias!
fedejp
0

@fedejp no tiene que insertar el 'AS'. Simplemente puede escribir 'INFORMATION_SCHEMA.SCHEMATA a' porque se entiende el 'AS'.

Y si solo hay una tabla en la consulta (sin combinaciones), entonces no necesita usar un alias y ninguno de los campos especificados necesita 'a'. delante del nombre del campo, ya que no hay confusión sobre de qué tabla provienen todos los campos.

Entonces simplemente puedes escribir:

SELECT 'USD' AS `MONEY`, * FROM INFORMATION_SCHEMA.SCHEMATA;
GAG y especias
fuente
Aún así, alias incluso una tabla le da la opción de escribir 'a'. en la lista de selección (en el caso del alias 'a') y ver todas las columnas de la tabla en una lista desplegable. Creo que es seguro decir que casi todos los desarrolladores de SQL con experiencia laboral siempre alias sus tablas, incluso cuando solo se selecciona una. El único lugar donde no uso alias es cuando le doy a una columna un valor de resultado de subconsulta. Entonces alias la tabla en la selección principal, pero no alias la de la subconsulta, para que pueda distinguir rápidamente entre los campos de la subconsulta y los campos de la consulta principal.
Mashchax