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
Inscription : janvier 15, 2003, 5:47 pm

SQL

#1

Message par nightblade » février 1, 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 de l’utilisateur
Nicolazerty
l'élu
Messages : 4006
Inscription : septembre 27, 2002, 2:59 pm

#2

Message par Nicolazerty » février 1, 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
Inscription : janvier 15, 2003, 5:47 pm

#3

Message par nightblade » février 1, 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
Inscription : janvier 15, 2003, 5:47 pm

#4

Message par nightblade » février 1, 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 de l’utilisateur
Nicolazerty
l'élu
Messages : 4006
Inscription : septembre 27, 2002, 2:59 pm

#5

Message par Nicolazerty » février 1, 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 de l’utilisateur
Davidazerty
l'élu
Messages : 2382
Inscription : octobre 12, 2002, 3:30 pm

#6

Message par Davidazerty » février 1, 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 de l’utilisateur
Arken
l'élu
Messages : 4262
Inscription : septembre 27, 2002, 12:55 pm

#7

Message par Arken » février 1, 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
Inscription : janvier 15, 2003, 5:47 pm

#8

Message par nightblade » février 2, 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 de l’utilisateur
Nicolazerty
l'élu
Messages : 4006
Inscription : septembre 27, 2002, 2:59 pm

#9

Message par Nicolazerty » février 2, 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 de l’utilisateur
Aurelienazerty
Webmaster / Président
Messages : 19759
Inscription : septembre 27, 2002, 9:41 pm

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

#10

Message par Aurelienazerty » février 2, 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
Inscription : janvier 15, 2003, 5:47 pm

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

#11

Message par nightblade » février 2, 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:
Dernière modification par nightblade le février 2, 2006, 12:21 pm, modifié 1 fois.

Avatar de l’utilisateur
Nicolazerty
l'élu
Messages : 4006
Inscription : septembre 27, 2002, 2:59 pm

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

#12

Message par Nicolazerty » février 2, 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