sirve sentencias que para lista español ejemplos developer consultas comandos 11g sql oracle alias required

sql - sentencias - ¿Se requiere la palabra clave ''como'' en Oracle para definir un alias?



que es sql y para que sirve (6)

AS sin comillas dobles es bueno.

SELECT employee_id,department_id AS department FROM employees order by department

--De acuerdo--

SELECT employee_id,department_id AS "department" FROM employees order by department

--error en oráculo--

así que es mejor usar AS sin doble cita si usa la cláusula ORDER BY

¿Se requiere la palabra clave ''AS'' en Oracle para definir un nombre de alias para una columna en una instrucción SELECT?

Me di cuenta que

SELECT column_name AS "alias"

es lo mismo que

SELECT column_name "alias"

Me pregunto cuáles son las consecuencias de definir un alias de columna de la última manera.


Ambos son correctos. Oracle permite el uso de ambos.



Mi conclusión es que (Probado en 12c):

  • AS es siempre opcional, con o sin ""; AS no hace diferencia (alias de columna solamente, no puede usar el alias de tabla AS anterior)
  • Sin embargo, con o sin "" hace la diferencia porque "" permite una letra minúscula para un alias

así:

SELECT {T / t} FROM (SELECT 1 AS T FROM DUAL); -- Correct SELECT "tEST" FROM (SELECT 1 AS "tEST" FROM DUAL); -- Correct SELECT {"TEST" / tEST} FROM (SELECT 1 AS "tEST" FROM DUAL ); -- Incorrect SELECT test_value AS "doggy" FROM test ORDER BY "doggy"; --Correct SELECT test_value AS "doggy" FROM test WHERE "doggy" IS NOT NULL; --You can not do this, column alias not supported in WHERE & HAVING SELECT * FROM test "doggy" WHERE "doggy".test_value IS NOT NULL; -- Do not use AS preceding table alias

Entonces, la razón por la cual USAR COMO Y "" causa un problema NO ES AS

Recuerde que "" le permite crear un alias minúsculas


<kdb></kdb> es necesario cuando tenemos un espacio en Alias ​​Name como

SELECT employee_id,department_id AS "Department ID" FROM employees order by department


(Probado en Oracle 11g )

Sobre AS :

  • Cuando se usa en la columna de resultados , AS es opcional.
  • Cuando se usa en el nombre de la tabla , AS no debe agregarse, de lo contrario, es un error.

Acerca de la double quote :

  • Es opcional y válido tanto para la columna de resultados como para el nombre de la tabla.

p.ej

-- ''AS'' is optional for result column select (1+1) as result from dual; select (1+1) result from dual; -- ''AS'' shouldn''t be used for table name select ''hi'' from dual d; -- Adding double quotes for alias name is optional, but valid for both result column & table name, select (1+1) as "result" from dual; select (1+1) "result" from dual; select ''hi'' from dual "d";