[RESOLU] Chercher dans SQL en DISTINCT

Eléphant du PHP | 68 Messages

06 nov. 2022, 09:27

Bonjour à tous,

est-il possible de faire une recherche DISTINCT dans SQL en ne voulant comparer que les 4 premiers caractères ?

Exemple: dans ma colonne j'ai des dates sous le format : 2022-01-30

Je voudrais que le DISTINCT opère uniquement sur le 2022 .

Mon but étant ensuite d'afficher les années différentes repérées dans la colonne

Je ne sais pas si c'est faisable ou non.

Merci par avance de vos réponses.

Mammouth du PHP | 2703 Messages

06 nov. 2022, 10:12

vous avez essayé, dans phpmyadmin, avec https://www.w3schools.com/sql/func_mysql_year.asp ?

Eléphant du PHP | 68 Messages

06 nov. 2022, 10:44

vous avez essayé, dans phpmyadmin, avec https://www.w3schools.com/sql/func_mysql_year.asp ?
Mon problème c'est que moi et l'anglais ca fait 2... je ne comprends absolument rien de ce qui est écrit en explications

Eléphant du PHP | 68 Messages

06 nov. 2022, 11:09

j'ai fini par trouver un autre moyen, mais mon problème c'est que avec ce code:
$NAI = 'SELECT * FROM act_Pnai3 WHERE RELEVEUR="'.$dataZ['RELEVEUR'].'"';
$resNAI = $KwsConnectBdd->query($NAI);
$nombre_de_NAI=mysqli_num_rows($resNAI);
while ($dataNAI = mysqli_fetch_array($resNAI)) {
$N_date = explode("-",''.$dataNAI['LADATE'].'');
}
$N_date[0] me retourne uniquement une année, alors que je voudrais que toutes les années différentes (sans doublons) qui se trouvent dans ma DB s'affiche à la suite genre:

2017, 2022, 2030

Mammouth du PHP | 2703 Messages

06 nov. 2022, 13:30

Mon problème c'est que moi et l'anglais ca fait 2... je ne comprends absolument rien de ce qui est écrit en explications
vous avez essayé l'exemple, dans phpmyadmin ?
SELECT YEAR("2017-06-15");

Eléphant du PHP | 68 Messages

06 nov. 2022, 13:38

vous avez essayé l'exemple, dans phpmyadmin ?
SELECT YEAR("2017-06-15");
Non, je ne comprends pas comment l'utiliser :(

Avatar du membre
Mammouth du PHP | 1564 Messages

10 nov. 2022, 17:58

Exemple: dans ma colonne j'ai des dates sous le format : 2022-01-30

La colonne est-elle en format date ou datetime ? Obligatoire pour l'utilisation des fonctions date comme YEAR() ou autres.

Sinon il te faut utiliser SUBSTR : https://sql.sh/fonctions/substring