SELECT : ressortir des enregistrements d'une table

Article écrit par kazhar

l'option SQL SELECT permet de ressortir des enregistrements d'une table, afin de les afficher par la suite.

elle prends plusiseurs arguments :

Code :
SELECT champ1, champ2, champ3, ...


ou champ[...] sont les champs que vous souhaitez ressortir


Code :
FROM table1, table2, ...


ou table[...] sont les différentes tables dans lesquelles sont les champs


Code :
WHERE champ1 = "..."
AND table2.champ2 = table1.champ2


ce critere permet de ne ressortir que les champs ayant certains criteres (par exemple, table2.champ2 = table1.champ2 dans le cas d'un FROM avec plusieurs tables, permet de ne ressortir que les enregistrements ayant un rapport les uns avec les autres)


Code :
GROUP BY champ


permet de ne ressortir qu'une seule entrée de champ
par exemple, si vous avez trois entrées dans votre table.
dans la premiere et la deuxieme, champ est égal à 1
et dans la troisieme, il est égal à 2, avec cette option, vous ne ressortirez que les champs 1 et 3.


Code :
HAVING count(champ) = 3


Cette option permet de faire des exceptions sur le GROUP BY.
ici, nous n'afficheront que les champs groupés dont la somme est de 3


Code :
ORDER BY champ DESC


cette option permet de trier les données par champ.
l'option DESC permet d'inverser le tri (alphabétique / contraire)


Code :
LIMIT nbre1, nbre2


cette option permet de limiter le nombre d'entrées ressorties
nbre1 définit le nombre d'entrées qu'il va sauter avant de ressortir ses entrées
nbre2 définit l'entrée numéro x à laquelle il va arreter de ressortir les données.

vous pouvez recuperez un enregistrement aléatoire grace à la fonction rand().

Code :
SELECT champ1, champ2
FROM table
ORDER BY rand();



Source : http://www.phportail.net