[SQL] SELECT *, TO_CHAR() AS

Résolu/Fermé
david29051992 Messages postés 217 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 18 juillet 2011 - Modifié par david29051992 le 15/07/2011 à 16:19
david29051992 Messages postés 217 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 18 juillet 2011 - 18 juil. 2011 à 09:12
Bonjour,

J'aimerais faire une requête de sélection sur une base de données Oracle.
La seule "complexité" possible est l'utilisation du TO_CHAR dans la requête.
J'aimerais faire quelque chose du style :

SELECT  
    *,  
    TO_CHAR(DATE_INSCR, "dd.mm.yy") AS DATE_INSCR  
FROM T_INSCRIPTION  


Le problème est que si je veux formater ma date directement dans la requête SQL je suis obligé de faire quelque du style :
(Impossibilité d'utiliser le * et donc il faut que je tape tous les champs de la table)

SELECT  
    ID_INSCR,  
    MDP_INSCR,  
    etc.,  
    etc.,  
    TO_CHAR(DATE_INSCR, "dd.mm.yy") AS DATE_INSCR  
FROM T_INSCRIPTION  


Et c'est embêtant car j'ai énormément de champs, et les spécifier tous à la main est lourd et se révèle être carrément chiant.
Donc si vous avez une solution pour utiliser les all (*) avec un TO_CHAR ce serait cool.

Est-ce compréhensible ?

Dans tous les cas merci de votre éventuelle aide.
Je vous souhaite à tous une bonne fin d'après-midi.

Cordialement.
A voir également:

3 réponses

DROE Messages postés 148 Date d'inscription mardi 5 mai 2009 Statut Membre Dernière intervention 26 juillet 2012 48
15 juil. 2011 à 21:39
Bonsoir,

Effectivement il ne reste qu'a faire :
SELECT  T_INSCRIPTION.*,
        TO_CHAR(DATE_INSCR, 'dd.mm.yy') AS DATE_INSCR
FROM    T_INSCRIPTION

mais avec cette requete tu auras DATE_INSCR et DATE_INSCR_1 en sortie, pas joli...

Combien as tu de champs en tout ?

0
jee pee Messages postés 40579 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 21 décembre 2024 9 460
Modifié par jee pee le 17/07/2011 à 12:00
Bonjour,

Si la date est toujours utilisée sous le même format, pourquoi ne pas créer une vue qui reprend tous les champs de la table et la date dans le format souhaité :

create view V_INSCRIPTION as select  
 ID_INSCR,    
 MDP_INSCR,    
 etc.,    
 etc.,    
 TO_CHAR(DATE_INSCR, "dd.mm.yy") AS DATE_INSCR    
 etc  
FROM T_INSCRIPTION ;

Et dans les requêtes d'interrogation utiliser la vue.

Cdlt

Un étranger, c'est un ami qu'on n'a pas encore rencontré.
0
david29051992 Messages postés 217 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 18 juillet 2011 27
18 juil. 2011 à 09:12
Bonjour,

Merci à vos deux réponses qui m'ont été bien utiles.

Concernant la vue, je n'y avais pas pensé et il est clair que c'est une solution envisageable.

Pour ce qui est de la requête plus haut, je ne connaissais tout simplement pas cette possibilité.

Je vais donc utilisé avec bon escient vos réponses.

Dans tous les cas merci à vous deux.

Bonne journée,
Cordialement.
0