3 Abfragen mit COUNT in SQL

He Leute,

folgendes Problem habe ich. 

Spalte 1 zeigt aktive (1) oder inaktive (0) an
Spalte 2 zeigt ein Anfangsdatum inkl Uhrzeit 2016-10-10 01:15:00
Spalte 3 zeigt ein Enddatum inkl Uhrzeit an 2016-11-02 01:15:00

Ich möchte ein COUNT Abfrage machen bei allen die in Spalte1 aktiv sind - Zähle wieviele Datensätze haben ein Anfangsdatum ABER kein Enddatum. (NULL)
Bei der Abfrage sollen doppelte Werte mitgezählt werden

 

Kann mir jemand bei der Abfrage helfen ? Ich kann auch 2 Abfragen machen und mir das dann selber ausrechnen.

SELECT COUNT(SPALTE2) FROM s_order_details_attributes    //----------weiter bin ich nicht gekommen :frowning:

Hallo Danio,

versuchs mal hiermit:

SELECT COUNT(SPALTE2) FROM `s_order_details_attributes`
WHERE SPALTE1 = 1 AND SPALTE3 IS NULL

 

1 Like

He MrMDeluxe,

danke hat direkt funktioniert. :slight_smile:

 

Kennst du vielleicht auch den SQL Befehl, dass das Datum von Spalte 2 und Spalte 3 verrechnet werden und mir die Differenz ausgegeben wird.

Beispiel:
Spalte 2 = 2016-10-10 01:15:00
Spalte 3 = 2016-10-14 10:18:23

Da wäre der Unterschied ja 4 Tage (Uhrzeit soll nciht berücksichtigt werden) 

mit GROUB BY könnte man ja die Anzahl der Tage nochmal übersichtlicher darstellen lassen, so das bei 50.000 berechnung mir 4 = 132x angezeigt wird.

 

Habe noch nicht gegooglet, ob solch ein Befehl überhaupt existiert :frowning:

Besten Dank im Voraus Danio

 

Habe bei google folgendes gefunden aber noch nicht anpassen können bzw. testen

 

SELECT TO_DATE(PRODDATE, ‘DD.MM.YYYY’) PRODDATE,AVG(DATEDIFFSCANPROD) AS DATEDIFF FROM( SELECT TAB1.PRODDATE AS PRODDATE,TAB2.SCANDATE,SUM(TAB2.SCANDATE - TAB1.PRODDATE) AS DATEDIFFSCANPROD FROM (SELECT TO_DATE(CREATE_DATE, ‘DD.MM.YYYY’) AS PRODDATE,ID AS PRODID FROM PROD_DATE) TAB1, (SELECT ID AS SCANID, TO_DATE(CREATE_DATE,‘DD.MM.YYYY’) AS SCANDATE FROM SCAN_DATE) TAB2 WHERE TAB1.PRODID = TAB2.SCANID GROUP BY TAB1.PRODDATE,TAB2.SCANDATE) GROUP BY PRODDATE