8797 sujets

Développement web côté serveur, CMS

Salut tout le monde,

Je galerre un peu poura faire une requette SQL afin de recupeter juste la premiére lettre d'un champ.
je m'explique j'ai un champs nom (avec plein de noms Smiley biggol ) je souhait les classer par lettre. sachant qu'il y a des lettre vide (cela j'aimerrais pas les afficher)
donc je voudrai savoir si c'est possible de faire une requette mysql afin de recuperer QUE la premiére lettre du champ.
une petite idée?
Merci
Modifié par hakkou (09 Jan 2008 - 12:11)
Salut à toi hakkou !
La fonction PHP permettant de tronquer une chaîne est substr().
Pour ton problème, la solution s'approche de :


<?php
	$connect = 'SELECT [i]champ[/i] FROM [i]table[/i] WHERE [i]champ[/i] != "" ORDER BY [i]champ[/i] ASC';
	$requete = mysql_query($connect) or die(mysql_error());
		while($donnees = mysql_fetch_array($requete))
		{
			echo substr($donnees['[i]champ[/i]'], 0, 1);
		}
?>


Smiley cligne
Je n'ai pas très bien compris ta problématique... si ça ne résout pas ton problème, essaye de la reformuler stp...

SELECT DISTINCT LEFT(champ,1) as champ_alias
FROM table
WHERE champ NOT LIKE ' %'
ORDER BY champ ASC


Cette requete retourne la première lettre du champ "champ" (une seule fois) de la table "table" où le champ "champ" ne commence pas par un espace, le tout dans l'ordre alphabétique....
Modifié par skywalk3r (09 Jan 2008 - 12:02)
Merci de ta reponse ^^
effectivement c'est possible en php Smiley cligne
mais en fait je veux faire un truc du genre
A
atoto
atiti
atutu
B
btototo

donc je pensais si c'etait possible de faire une requete en SQL avec select et distinct sur la premiere lettre.. ca ira plus vite.

Si je trouve pas je traiterai ca en php Smiley lol
Merci
Edit :desolé skywalk3r j'avais pas vu ton post ^^ c'etait ca que je voulais isolé la premiére lettre tout en triant la colonne Smiley cligne
Merci
Modifié par hakkou (09 Jan 2008 - 12:11)