Question : Oracle 9i SQL décodent

Bonjour, l'essai du

I AM écrivent un SQL basé sur la condition suivante : le

select
a.id, f_name du
a.col2, L-nom du
b.col3, le
c.v_date date_1, le
decode (a.cat, « 007 », wbr/>, « 008 », « second » 'de first'<, '') comme
from a, b, c du cat_type
.....,… changement du

The du
where
...... que je veux faire sur le SQL ci-dessus est : le

If le SQL ci-dessus renvoie juste un disque pour « d'abord » et un pour « en second lieu », je veux montrer seulement le disque contenant « d'abord », ceci que je peux passer using la fonction MINIMUM dans le décodage, qui est :
min (décoder (a.cat, « 007 », « first », '008 ' , « en second lieu », '')) comme cat_type, j'obtiendrai juste le disque contenant « d'abord ». le
But, s'il retourne, plus d'un disque pour le « premier » ou « en second lieu » alors il devrait renvoyer en tant que lui is.
For par exemple : du
du du du du en second lieu 02/28/2010
en second lieu 03/20/2010
1 John du premier 02/01/2010
1 John du cat_type date_1
1 John du
ID F_Name L_Name du forgeron premier 14/04/2010
1 John du forgeron premier 01/19/2010
1 John du forgeron du forgeron en second lieu 05/03/2010
2 .......................... du ..... du
.......................... du ..... du
.......................... du ..... du
or

ID F_Name L_Name du cat_type date_1
1 John du forgeron premier 02/14/2010
1 John du forgeron en second lieu 04/16/2010
1 John du forgeron en second lieu 02/19/2010
.......................... du ..... du
.......................... du ..... du
de l'or

ID F_Name L_Name du cat_type date_1
1 John du forgeron premier 02/17/2010
1 John forgeron du forgeron .......................... .......... .......... .......... ...... ...............................

so dessus tellement en avant. le

I veulent faire quelque chose comme : le

(CAS QUAND ((a.cat = « 007 » ET COMPTE (a.cat) > 1)
OU (a.cat = « 008 » ET COMPTE (a.cat) > 1)) THEN
décodent (a.cat, « 007 », wbr/>, « 008 », « second » 'de first'<, '') le
END
de minute du
(décoder (a.cat, « 007 », « first », '008 ' , « en second lieu », ''))) comme le cat_type

But que ceci ne fonctionne pas correctement. le
Can quelqu'un suggèrent une méthode pour résoudre ceci ?

Thanks@
class= > " clair " de
solutions >Related class= href= " /Database/Oracle/9.x/Q_26324081.html " title= " Oracle SQL de Oracle SQL de qRelatedChild " de " class= PAS de CLAUSE " -- LÀ OÙ PAS CLAUSE

Réponse : Oracle 9i SQL décodent

pour le rendre bien plus simple, tout que vous avez besoin est le ci-dessous je pense. Il produit les mêmes résultats suivant les indications du screenshat que j'ai déjà attaché. nous n'avons pas besoin du groupe d'addition par etc….

Essayer ceci et choisir que jamais vous voulez.

choisir *
de (
          CHOISIR X.*,
          COMPTE (DÉCODER (X.C_TYPE, « PRIMAIRE », 1, la nulle)) AU-DESSUS (CLOISON PAR X.ID) DE PRIM_CNT,
          COMPTE (DÉCODER (X.C_TYPE, « INITIALE », 1, la nulle)) AU-DESSUS (CLOISON PAR X.ID) D'INIT_CNT
                          DE
                                (T1.ID CHOISI, T1.NAME, T1.DESCRP, t2.c_desc,
                                décoder (T2.C_ID, « 007 », « PRIMAIRE », « 008 », « INITIALE », '') comme C_TYPE
                                Du T1 d'ESSAI, T2 TEST2
                                LÀ OÙ
                                T1.ID = T2.ID
                                ) X
          groupe par x.ID, x.NAME, x.DESCRP, x.c_desc, x.C_TYPE) A
là où pas (a.prim_cnt =1 et a.init_cnt = 1 et c_type='PRIMARY)

Merci
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us