INSERT INTO T_LANGUE_LNG VALUES (1, 'allemand') INSERT INTO T_LANGUE_LNG VALUES (2, 'Français') INSERT INTO T_LANGUE_LNG VALUES (3, 'Italien') INSERT INTO T_LANGUE_LNG VALUES (4, 'Autre')
1) à la volée :
SELECT LNG_ID, LNG_LANGUE, CASE LNG_LANGUE WHEN 'allemand' THEN 2 WHEN 'Français' THEN 1 WHEN 'Italien' THEN 3 WHEN 'Autre' THEN 4 END AS ORDRE FROM T_LANGUE_LNG ORDER BY ORDRE
2) dans la table
ALTER TABLE T_LANGUE_LNG ADD LNG_ORDRE INT
UPDATE T_LANGUE_LNG SET LNG_ORDRE = 1 WHERE LNG_LANGUE = 'Français'
UPDATE T_LANGUE_LNG SET LNG_ORDRE = 2 WHERE LNG_LANGUE = 'allemand'
UPDATE T_LANGUE_LNG SET LNG_ORDRE = 3 WHERE LNG_LANGUE = 'Italien'
UPDATE T_LANGUE_LNG SET LNG_ORDRE = 4 WHERE LNG_LANGUE = 'Autre'
SELECT * FROM T_LANGUE_LNG ORDER BY LNG_ORDRE
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
elia a écrit :
Bonjour,
J'ai une table qui défini chaque langue par un numéro soit:
allemand = 1
Français = 2
Italien = 3
Autre = 4
Quelle requête en SQL faire pour selectionner d'abord le français
ensuite l'allemand, puis le reste.
ORDER BY langue_id, 2, 1, 3, 4 ???
Merci, pascal
Soit rajouter l'info à la volée, soit rajouter l'info dans la table...
INSERT INTO T_LANGUE_LNG VALUES (1, 'allemand')
INSERT INTO T_LANGUE_LNG VALUES (2, 'Français')
INSERT INTO T_LANGUE_LNG VALUES (3, 'Italien')
INSERT INTO T_LANGUE_LNG VALUES (4, 'Autre')
1) à la volée :
SELECT LNG_ID, LNG_LANGUE,
CASE LNG_LANGUE
WHEN 'allemand' THEN 2
WHEN 'Français' THEN 1
WHEN 'Italien' THEN 3
WHEN 'Autre' THEN 4
END AS ORDRE
FROM T_LANGUE_LNG
ORDER BY ORDRE
2) dans la table
ALTER TABLE T_LANGUE_LNG ADD LNG_ORDRE INT
UPDATE T_LANGUE_LNG
SET LNG_ORDRE = 1
WHERE LNG_LANGUE = 'Français'
UPDATE T_LANGUE_LNG
SET LNG_ORDRE = 2
WHERE LNG_LANGUE = 'allemand'
UPDATE T_LANGUE_LNG
SET LNG_ORDRE = 3
WHERE LNG_LANGUE = 'Italien'
UPDATE T_LANGUE_LNG
SET LNG_ORDRE = 4
WHERE LNG_LANGUE = 'Autre'
SELECT *
FROM T_LANGUE_LNG
ORDER BY LNG_ORDRE
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
INSERT INTO T_LANGUE_LNG VALUES (1, 'allemand') INSERT INTO T_LANGUE_LNG VALUES (2, 'Français') INSERT INTO T_LANGUE_LNG VALUES (3, 'Italien') INSERT INTO T_LANGUE_LNG VALUES (4, 'Autre')
1) à la volée :
SELECT LNG_ID, LNG_LANGUE, CASE LNG_LANGUE WHEN 'allemand' THEN 2 WHEN 'Français' THEN 1 WHEN 'Italien' THEN 3 WHEN 'Autre' THEN 4 END AS ORDRE FROM T_LANGUE_LNG ORDER BY ORDRE
2) dans la table
ALTER TABLE T_LANGUE_LNG ADD LNG_ORDRE INT
UPDATE T_LANGUE_LNG SET LNG_ORDRE = 1 WHERE LNG_LANGUE = 'Français'
UPDATE T_LANGUE_LNG SET LNG_ORDRE = 2 WHERE LNG_LANGUE = 'allemand'
UPDATE T_LANGUE_LNG SET LNG_ORDRE = 3 WHERE LNG_LANGUE = 'Italien'
UPDATE T_LANGUE_LNG SET LNG_ORDRE = 4 WHERE LNG_LANGUE = 'Autre'
SELECT * FROM T_LANGUE_LNG ORDER BY LNG_ORDRE
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
elia
Super extra merci. Il me reste un bout à faire en language sql mais j'ai compris la logique!! Merci beaucoup à toi! Pascal
Super extra merci. Il me reste un bout à faire en language sql mais
j'ai compris la logique!! Merci beaucoup à toi! Pascal