SELECT “seul”
SELECT 1,2,'texte' ; -- mysql et sqlserver
SELECT 1,2,'texte' FROM dual; -- Oracle (FROM est obligatoire)
FROM permet le rajout des Noms des objets du serveur SQL (tables, colonnes(champs))
-- commentaires
/* commentaires pour les bloques */
'éditeur !)
# pas conventionnel mais fonctionne sur MYSQL (voir coloration du code par l
// interdit
Utiliser des synonymes (ALIAS) de noms de tables
SELECT marq.libelle AS NomMarque
, tel.prix
, tel.proprietaire_idFROM TD_marque_tel AS marq
INNER JOIN TD_telephone AS tel
WHERE marq.idMarque = tel.marque_id;
Le mot clé AS n’est pas obligatoire sur MYSQL
ATTENTION à l’ordre de traitement un alias dans le nom des champs sélectionnés ne peut pas être utilisé dans le WHERE contrairement à un ALIAS derrière le nom d’une table
ordre d’exécution dans le moteur de base de donnéesSELECT -- 3 -- PROJECTION
FROM -- 1 -- SELECTION
WHERE -- 2 -- RESTRICTION : condition sur la SELECTION
GROUP BY
HAVING
ORDER BY -- 4
REMARQUE : (à corriger)
SELECT type_id marque_id , 1.2*prix AS Prix_TTC
FROM TD_telephone AS c;
marque_id est un alias, erreur classique !
SELECT * FROM TD_telephone;
SELECT *
FROM TD_telephone
WHERE
= 'ROUGE' OR couleur <> 'ROUGE'; couleur
SELECT * from table WHERE
= 'valeur'
NOM_CHAMP OR NOM_CHAMP <> 'valeur'
OR NOM_CHAMP IS NULL;
http://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html#operator_equal-to
SELECT CONCAT(type_id,' - ',couleur) FROM TD_telephone;
http://www.w3schools.com/sql/sql_isnull.asp
ATTENTION si sur un champ le “NULL” est autorisé, lors de l’exécution d’une requête on peut avoir un résultat différent de celui désiré en cas de valeur NULL.
+---------------+
| votreFonction |
+---------------+
| SP - ROUGE |
| SP - NC |
| CL - NOIR |
| CO - BLANC |
| IP - NC |
| CO - BLANC |
| SP - ROUGE |
| NV |
| NV |
+---------------+