bonjour,
comment faire une requête select sur une table afin qu'elle m'affiche un résultat filtré sur le type des données?
exemple:
soit une table contenant 1 seul champ "monchamp" et dont les enregistrements sont de type varchar2 mais dont certaines valeur sont '1', '3'... donc numérique et d'autres "1-A","3B"..etc .
Je dois ordonne numériquement les lignes de la table en utilisant les "fonctions de caractères";
Dans un autre post, on m'a suggéré d'utiliser Translate:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 SQL> SELECT * FROM matable; monchamp - 1 7 10 1-A 2 3-B 3 43 etc...
donc ok pour afficher et trier les valeurs numériques avec translate.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 SQL> SELECT * FROM matable WHERE translate (monchamp, 'monchamp1234567890', 'monchamp') IS NULL order by to_number(monchamp) asc; monchamp - 1 2 3 7 10 43 etc..
Cependant,je ne parviens toujours pas à trouver une solution dès que ce ne sont plus des valeurs numériques !!
*comment faire pour trier, à partir de cette même table, les valeurs qui ne sont pas numérique?
*comment trier la table complète (valeur numérique et non numérique mais toutes de type varchar2) ?
Partager