SQL

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

SQL

Message par nightblade » février 1st, 2006, 12:37 pm

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 du membre
Nicolazerty
l'élu
Messages : 3985
Enregistré le : septembre 27th, 2002, 2:59 pm

Message par Nicolazerty » février 1st, 2006, 1:42 pm

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
Messages : 837
Enregistré le : janvier 15th, 2003, 5:47 pm

Message par nightblade » février 1st, 2006, 2:59 pm

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
Messages : 837
Enregistré le : janvier 15th, 2003, 5:47 pm

Message par nightblade » février 1st, 2006, 3:35 pm

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 du membre
Nicolazerty
l'élu
Messages : 3985
Enregistré le : septembre 27th, 2002, 2:59 pm

Message par Nicolazerty » février 1st, 2006, 4:17 pm

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 du membre
Davidazerty
l'élu
Messages : 2365
Enregistré le : octobre 12th, 2002, 3:30 pm

Message par Davidazerty » février 1st, 2006, 6:49 pm

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 du membre
Arken
l'élu
Messages : 4060
Enregistré le : septembre 27th, 2002, 12:55 pm

Message par Arken » février 1st, 2006, 7:03 pm

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
Messages : 837
Enregistré le : janvier 15th, 2003, 5:47 pm

Message par nightblade » février 2nd, 2006, 8:14 am

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 du membre
Nicolazerty
l'élu
Messages : 3985
Enregistré le : septembre 27th, 2002, 2:59 pm

Message par Nicolazerty » février 2nd, 2006, 10:27 am

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 du membre
Aurelienazerty
Webmaster / Président
Messages : 18819
Enregistré le : septembre 27th, 2002, 9:41 pm

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

Message par Aurelienazerty » février 2nd, 2006, 10:51 am

Moi je vote comme nico... Rhalala, comme quoi, une bonne modélisation avant un dévellopement, c'est toujours mieux...
Aurelienazerty

Image

nightblade
Bernard pivot
Messages : 837
Enregistré le : janvier 15th, 2003, 5:47 pm

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

Message par nightblade » février 2nd, 2006, 11:24 am

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:
Modifié en dernier par nightblade le février 2nd, 2006, 12:21 pm, modifié 1 fois.

Avatar du membre
Nicolazerty
l'élu
Messages : 3985
Enregistré le : septembre 27th, 2002, 2:59 pm

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

Message par Nicolazerty » février 2nd, 2006, 11:28 am

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 !

Répondre