0
ich diese Abfrage bin mitWie kann ich das Datum zu ändern
SELECT
A.EMP_NO, A.EMP_NAME, A.DEPARTMENT_NAME, A.ATT_DATE,
CASE
WHEN B.EMP_NO IS NULL
THEN 'A'
ELSE 'P'
END PRESENT_STATUS
FROM
(SELECT
A.EMP_NO, A.EMP_NAME, A.DEPARTMENT_NAME,
B.ATT_DATE
FROM
EMPLOYEES A,
(SELECT
TO_DATE(:P_FROM_DATE) + LEVEL ATT_DATE
FROM DUAL
CONNECT BY LEVEL <= TO_DATE(:P_TO_DATE) - TO_DATE(:P_FROM_DATE)) B
WHERE
TRIM(TO_CHAR(B.ATT_DATE, 'DAY')) <> 'SUNDAY') A,
(SELECT EMP_NO, EMP_NAME, DEPARTMENT_NAME, TRUNC(TIME_STAMP) ATT_DATE
FROM EMP22
GROUP BY EMP_NO, EMP_NAME, DEPARTMENT_NAME, TRUNC(TIME_STAMP)) B
WHERE A.EMP_NO = B.EMP_NO(+) AND A.ATT_DATE = B.ATT_DATE(+)
GROUP BY A.EMP_NO, A.EMP_NAME, A.DEPARTMENT_NAME, A.ATT_DATE, B.EMP_NO
Abfrageergebnis wie dieses
ist| EMP_Name | emp_NO | Department_name | 2013-06-01 | 2013-06-02 | 2013-06-03 | 2013-06-04 | 2013-06-05 |
| Naren | 1 | 22 | A | A | A | A | P |
| Srinu | 2 | 22 | P | P | P | P | P |
| Blah | 3 | 22 | A | P | P | P | P |
ich führen müssen, wie dieses Datum wie diese
| EMP_Name | emp_NO | Department_name | 01 | 02 | 03 |04 | 05 |
| Naren | 1 | 22 | A | A | A | A | P |
| Srinu | 2 | 22 | P | P | P | P | P |
| Blah | 3 | 22 | A | P | P | P | P |
sein sollte, können Sie helfen mir bitte meine Anfrage zu ändern
Diese Abfrage erzeugt diese Ausgabe nicht. Ist das nur ein Teil von dem, was du läufst? –
Wie Alex sagt, stimmt diese Ausgabe nicht mit dieser Abfrage überein. Ich würde auch bemerken, dass Spaltennamen beliebig mit Alias versehen werden können, ohne die Abfragelogik zu ändern. –
[Schlechte Angewohnheiten zu treten: Verwenden von alten JOINs] (http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins. aspx) - diese alte * durch Kommas getrennte Liste von Tabellen * style wurde durch die * richtige * ANSI 'JOIN'-Syntax im ANSI - ** 92 ** SQL Standard ersetzt (** vor mehr als 20 Jahren **) und seine Verwendung wird davon abgeraten –