SQL

Tous les benchmarks, vos résultats, vos tests.
Vos programmes, vos conseils logiciel
Votre matos, vos problèmes
nightblade
Bernard pivot
Réactions :
Messages : 837
Inscription : janvier 15, 2003, 5:47 pm

SQL

Message par nightblade »

Je cherche à faire une requête SQL qui pourrait me renvoyer le résultat trié mais pas trier par ordre DESC.

Explication :
Dans mon champ 'etat' j'ai :
- 'Très élevé'.
- 'Elevé'.
- 'Normal'.

Si je fais :

Code : Tout sélectionner

SELECT * FROM evenements ORDER BY `import` DESC
Il me classe :

- 'Très élevé'.
- 'Normal'.
- 'Elevé'.

La question est donc peut-on faire affiché dans l'ordre (non alphabétique):
- 'Très élevé'.
- 'Elevé'.
- 'Normal'.
Avatar de l’utilisateur
Nicolazerty
l'élu
Réactions :
Messages : 4114
Inscription : septembre 27, 2002, 2:59 pm

Message par Nicolazerty »

il faut créer un table "importance"
importance(id,libelle,rang)
et comme ca tu fais le tri sur le rang de l'importance liée à ton évenement
Résistance !
nightblade
Bernard pivot
Réactions :
Messages : 837
Inscription : janvier 15, 2003, 5:47 pm

Message par nightblade »

nicolazerty a écrit :il faut créer un table "importance"
importance(id,libelle,rang)
et comme ca tu fais le tri sur le rang de l'importance liée à ton évenement
:heing:

j'été parti sur une requête comme ça :

Code : Tout sélectionner

"SELECT 1 AS CodeTri,* FROM evenements WHERE 'import' LIKE 'Tr%' 
    UNION ALL 
    SELECT 2 AS CodeTri,* FROM evenements WHERE 'import' LIKE 'El%' 
    UNION ALL 
    SELECT 3 AS CodeTri,* FROM evenements WHERE 'import' LIKE 'No%' 
    UNION ALL 
    SELECT 4 AS CodeTri,* FROM evenements WHERE 'import' LIKE 'Fa%' 
    UNION ALL 
    ORDER BY CodeTri DESC" 
(mais elle marche po!)



Avec ta solution je ne voie pas comment je peux faire correspondre les 'Id' avec les bons import (rang)?
nightblade
Bernard pivot
Réactions :
Messages : 837
Inscription : janvier 15, 2003, 5:47 pm

Message par nightblade »

Paf j'ai trouvé :

Code : Tout sélectionner

SELECT 1  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'Tr%'
UNION ALL

SELECT 2  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'El%'
UNION ALL

SELECT 3  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'No%'
UNION ALL

SELECT 4  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'Fa%'

ORDER BY CodeTri DESC
PS : Merci quand même Nico!
Avatar de l’utilisateur
Nicolazerty
l'élu
Réactions :
Messages : 4114
Inscription : septembre 27, 2002, 2:59 pm

Message par Nicolazerty »

nightblade a écrit :Paf j'ai trouvé :

Code : Tout sélectionner

SELECT 1  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'Tr%'
UNION ALL

SELECT 2  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'El%'
UNION ALL

SELECT 3  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'No%'
UNION ALL

SELECT 4  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'Fa%'

ORDER BY CodeTri DESC
:shock:

t'as juste à rajouter un champ importance a ta table evenements

Code : Tout sélectionner

select evenements.*,importance.rang,importance.libelle
FROM evenement,importance
WHERE evenement.importance=importance.id
ORDER BY importance.rang
Résistance !
Avatar de l’utilisateur
Davidazerty
l'élu
Réactions :
Messages : 2443
Inscription : octobre 12, 2002, 3:30 pm

Message par Davidazerty »

Ou tu rajoutes un champ 'code_import' apres 'import' ou tu mets l'importance mais de facon numérique, et tu fais correspondre :

import | code_import
Très élevé | 4
Elevé | 3
Normal | 2
Faible | 1

et tu tries dessus.

Code : Tout sélectionner

SELECT * FROM evenements ORDER BY `code_import` DESC
Avatar de l’utilisateur
Arken
Éleveur de srou
Réactions :
Messages : 5128
Inscription : septembre 27, 2002, 12:55 pm

Message par Arken »

nightblade a écrit :Paf j'ai trouvé :

Code : Tout sélectionner

SELECT 1  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'Tr%'
UNION ALL

SELECT 2  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'El%'
UNION ALL

SELECT 3  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'No%'
UNION ALL

SELECT 4  AS CodeTri, import, id
FROM evenements
WHERE import
LIKE  'Fa%'

ORDER BY CodeTri DESC
PS : Merci quand même Nico!
oh my god !!! J'ai failli perdre la vue.

Moi je vote pour la solution nico, autant faire un truc propre dès le début.
nightblade
Bernard pivot
Réactions :
Messages : 837
Inscription : janvier 15, 2003, 5:47 pm

Message par nightblade »

olivierazerty a écrit :
nightblade a écrit :Paf j'ai trouvé :


...

oh my god !!! J'ai failli perdre la vue.

Moi je vote pour la solution nico, autant faire un truc propre dès le début.
Vi sauf si la basse ne peut être modifiée... :bute:
Avatar de l’utilisateur
Nicolazerty
l'élu
Réactions :
Messages : 4114
Inscription : septembre 27, 2002, 2:59 pm

Message par Nicolazerty »

nightblade a écrit : Vi sauf si la basse ne peut être modifiée... :bute:
En effet c'est un détail important...
Résistance !
Avatar de l’utilisateur
Aurelienazerty
Webmaster / Président
Réactions :
Messages : 25089
Inscription : septembre 27, 2002, 9:41 pm

vive UML et ses partiels, sans rapport, mais j'en sort!

Message par Aurelienazerty »

Moi je vote comme nico... Rhalala, comme quoi, une bonne modélisation avant un dévellopement, c'est toujours mieux...
nightblade
Bernard pivot
Réactions :
Messages : 837
Inscription : janvier 15, 2003, 5:47 pm

Re: vive UML et ses partiels, sans rapport, mais j'en sort!

Message par nightblade »

Aurelienazerty a écrit :Moi je vote comme nico... Rhalala, comme quoi, une bonne modélisation avant un dévellopement, c'est toujours mieux...
Je remercie mes compatriote France Télécom pour cela!
:pascontent:
Dernière modification par nightblade le février 2, 2006, 12:21 pm, modifié 1 fois.
Avatar de l’utilisateur
Nicolazerty
l'élu
Réactions :
Messages : 4114
Inscription : septembre 27, 2002, 2:59 pm

Re: vive UML et ses partiels, sans rapport, mais j'en sort!

Message par Nicolazerty »

nightblade a écrit : Je remercie mais compatriote France Télécom pour cela!
:pascontent:
Waou...
Sinon c'est vrai que de réutiliser certaines bases développées par d'autres personnes ca peut faire peur
Résistance !