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?


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.


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;

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
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.