2010-12-07 6 views
0

j'ai les enregistrements à l'aide de la requête SELECT trunc (createdon, 'hh') CREATEDON, count (*) ENDROIT OÙ LABSTATUS = 1 ET CREATEDON> = TO_DATE ('01/07/2010 10 ',' JJ/MM/AAAA hh ') GROUP BY trunc (créé sur,' hh ') dans une base horaire. J'ai besoin de placer la valeur de comptage dans la colonne de temps correspondante dans la grille. Comment puis-je faire ?? toute idéeen utilisant VB6 et oracle

+0

Pourriez-vous s'il vous plaît changer le titre à un plus spécifique. La question n'a rien à voir avec vb6. – HamoriZ

Répondre

0

Vous pouvez le faire comme ceci:

Heures sont dans les colonnes

SELECT TRUNC(createdon,'hh'), SUM(CASE WHEN hh=1 THEN 1 ELSE 0) h1, 
           SUM(CASE WHEN hh=2 THEN 1 ELSE 0) h2 ..... 
FROM TABLle1, 
(SELECT 1 AS hh FROM dual 
UNION 
SELECT 2 AS hh FROM dual 
UNION 
SELECT 3 AS hh FROM dual 
.... 
) hours 
WHERE LABSTATUS=1 AND CREATEDON >=TO_DATE('01/07/2010 10','DD/MM/YYYY hh') AND 
TRUNC(createdon,'hh')= hours.hh 
GROUP BY TRUNC(createdon,'hh') 

Heures sont en lignes:

SELECT hours.hh, SUM(CASE WHEN TRUNC(createdon,'hh')= hours.hh THEN 1 ELSE 0 END) hh,         
    FROM TABLle1, 
    (SELECT 1 AS hh FROM dual 
    UNION 
    SELECT 2 AS hh FROM dual 
    UNION 
    SELECT 3 AS hh FROM dual 
    .... 
    ) hours 
    WHERE LABSTATUS=1 AND CREATEDON >=TO_DATE('01/07/2010 10','DD/MM/YYYY hh')  
    GROUP BY hours.hh 

Cette requête entraînera comme celui-ci

  • rangée 1 12

    ligne 2 0

    ligne 3 4

...

+0

merci .. Mais j'ai eu la valeur de comptage et le temps correspondant .. Mais j'ai besoin de placer cette valeur de comptage dans la grille .. Par exemple: 01:59 PM 2 .. Dans la légende de la colonne Grid ayant 1: 00-2: 00Pm la valeur de comptage 2 doit être – Arthi

+0

son heure ne fonctionne pas .. heures: invalide identificateur erreur – Arthi

+0

SELECT heures.hh, SUM (CAS QUAND TO_CHAR (createdon, 'hh') = heures.hh ALORS 1 ELSE 0 FIN) AS hh, (SELECT 1 AS hh à partir de deux UNION SELECT 2 AS hh à partir de deux UNION SELECT 3 AS hh à partir de deux UNION SELECT 4 AS hh DE dOUBLE UNION SELECT 5 AS hh DE dOUBLE UNION SELECT 6 AS hh FROM DUAL UNION SELECT 7 AS hh DE DOUBLE UNION SELECT 8 AS hh DE DOUBLE UNION SELECT 9 AS hh DE DOUBLE ) heures à partir de TABLE1 OÙ LABSTATUS = 1 ET CREATEDON> = TO_DATE ('01/07/2010 ',' JJ/MM/AAAA hh ') et hnum =' 475407D ' GROUP BY heures.hh GROUP BY heures.hh * ERREUR à la ligne 22: ORA-00904: "HEURES". "HH": invalide Identifiant – Arthi