Salta el contingut

Consultes senzilles - SELECT - NULL - ALIAS

SELECT

Estructura d'una SELECT
SELECT * | [ DISTINCT ] { < columna | expressió > [alias] }
FROM < taula >
WHERE < condició >
GROUP BY < columna | expressió >
HAVING < condició >
ORDER BY { < columna | expressió | num_col > [ ASC | DESC ] }

La comanda SELECT s’usa per a recuperar informació de la base de dades.

En el seu format més simple ha d’incloure:

  • La clàusula SELECT que especifica les columnes que es mostraran

  • La clàusula FROM que especifica la taula que conté les columnes enumerades a la clàusula SELECT

Capacitats de la SELECT

  • Projecció: s’usa per seleccionar les columnes d’una taula

  • Selecció: s’usa per seleccionar les files d’una taula

projeccio seleccio projeccioSeleccio

SELECT ... FROM ... WHERE ...

  • El que posem a la part del SELECT serà la projecció, és a dir, les columnes que veurem.

  • La condició de la part del WHERE serà la selecció de les files que veurem.

selectFromWhere

També podem mostrar totes les columnes de dades d’una taula utilitzant el símbol asterisc, *, en comptes del nom de les columnes.

SELECT *

SELECT *
FROM countries;
COUNTRY_ID COUNTRY_NAME REGION_ID
CA Canada 2
DE Germany 1
UK United Kingdom 1
US United States of America 2

Operadors aritmètics

  • Els operadors aritmètics que podem utilitzar són:

    + (suma)

    - (resta)

    * (multiplicació)

    / (divisió)

    % (mòdul – residu de la divisió entera)

Tant podem utilitzar-los al SELECT com al WHERE

Exemple d’operador aritmètic

El següent exemple utilitza l’operador * per a calcular el sou amb un increment del 10%.

SELECT last_name, salary, salary * 1.1
FROM employees;
LAST_NAME SALARY SALARY * 1.1
King 24000 26400
Kochhar 17000 18700
Ernst 6000 6600
Vargas 2500 2750
Grant 7000 7700

Prioritat dels operadors

La prioritat és l’ordre en què s’avaluen els operadors de l’expressió.

La prioritat és la mateixa que en altres llenguatges de programació, com ara el C#.

  • * i / són més prioritaris que + i -.

  • En igual prioritat s’avalua abans l’operador de l’esquerra.

Trobareu la prioritat de tots els operadors en aquest enllaç.

Valors NULL

En SQL utilitzem el valor NULL quan volem indicar que no hi ha valor.

NULL indica que un valor que no està disponible, sense assignar, desconegut o no aplicable.

Les operacions amb valors NULL poden donar valors inesperats:

23 + NULL       => NULL
FALSE OR NULL   => NULL
FALSE AND NULL  => FALSE
23 > NULL       => NULL

SELECT ... IS [NOT] NULL

Per a seleccionar files amb, o sense, valors NULL utilitzem l’operador IS NULL o IS NOT NULL.

SELECT last_name, salary
FROM employees
WHERE commission_pct IS NULL;
SELECT last_name, salary, commission_pct
FROM employees
WHERE commission_pct IS NOT NULL;

Alias

Un alias és una forma de canviar el nom de la columna en el retorn de la consulta.

Solem utilitzar-ho quan la columna és fruit d’una expressió.

També si volem indicar un nom més descriptiu que no pas el propi nom de la columna.

Podem posar el nom de l’alias entre cometes dobles "alias"

Alias: Exemple

Per indicar l’alias podem utilitzar la paraula clau AS. És opcional.

SELECT  last_name AS "Cognom",
        salary "Sou",
        salary * 1.1 AS "Sou Incrementat"
FROM employees;
Cognom Sou Sou Incrementat
King 24000 26400
Kochhar 17000 18700
Ernst 6000 6600
Vargas 2500 2750
Grant 7000 7700