Classer une string
Résolu
marwan-poste
Messages postés
55
Statut
Membre
-
jordane45 Messages postés 40050 Statut Modérateur -
jordane45 Messages postés 40050 Statut Modérateur -
Bonjour,
J'ai une String qui contient ce type de données
Exp
8H 00
8H 30
9H 00
10H 00
mais la résulta est sous forme:
8H 30
8H 00
9H 00
10H 00
J'ai une String qui contient ce type de données
Exp
8H 00
8H 30
9H 00
10H 00
select * from my_table where heure between 8 and 14 AND date ="2015-05-15" ORDER BY (CONVERT(SUBSTRING_INDEX(heure,'H',1),UNSIGNED INTEGER) );
mais la résulta est sous forme:
8H 30
8H 00
9H 00
10H 00
A voir également:
- Classer une string
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
- Logiciel pour classer ses musiques - Télécharger - Lecture & Playlists
- Classer automatiquement mail gmail - Guide
- Logiciel pour classer ses photos - Guide
- Classer les applications par ordre alphabétique iphone - Guide
2 réponses
Bonjour,
Si tu stockes des HEURES dans ta BDD .. utilises un champ (exprès fait pour....) => TIME et non du varchar...
Cela te facilitera grandement tes requêtes......et l'utilisation de tes données.
Si tu stockes des HEURES dans ta BDD .. utilises un champ (exprès fait pour....) => TIME et non du varchar...
Cela te facilitera grandement tes requêtes......et l'utilisation de tes données.
Bonjour,
En effet, j'ai trop de données.Je peux pas modifier la DB.
En effet, j'ai trop de données.Je peux pas modifier la DB.
ORDER BY (TIME_FORMAT(CONCAT(substring_index(heure,'H ',1), ':', substring_index(heure,'H ',-1) ), '%H:%i')) asc;
A la limite .. vu que tu as deux champs .. (heures et minutes...)
tu fais juste un order by sur l'heure puis les minutes... pas besoin de concat. (le concat te serviras à affcher éventuellement...)
tu fais juste un order by sur l'heure puis les minutes... pas besoin de concat. (le concat te serviras à affcher éventuellement...)
select CONCAT(T.heure, "H",T.minutes) as HeurMin
, T.*
FROM my_table T
WHERE heure between 8 and 14
AND date ="2015-05-15"
ORDER BY heure,minutes