Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 23 von 23

Thema: datumssprünge kalenderwochen, die woche 52...

  1. #21
    emanymton ist offline Neuer Benutzer
    Registriert seit
    14.09.2011
    Beiträge
    15

    Standard

    also, kleine sache noch:
    ich stehe jetzt vor dem problem, das ein "Andreas Kretschmer" 2004 gehabt hat, zumindest laut google...

    fogender code:
    Code:
    select city_id,   count(id) as bestellungen, 
    to_char(submitted_at,'yyyy mm') as wann
    
     from cart_order where city_id in ( select city_id from (select
     sum(case when ( to_char(submitted_at,'yyyy mm')='2011 01') then 1 else 0 end) as anfang, 
    sum(case when ( to_char(submitted_at,'yyyy mm')='2011 07')  then 1 else 0 end) as ende ,
    city_id from orders group by city_id ) foo 
    where anfang>0 and ende>0 order by cast( ende as float)/cast(NULLIF(anfang,0)as float) desc limit 10 ) 
    
     group by city_id, wann  
    order by wann,city_id
    ergibt

    20
    12
    2011 01
    544
    12
    2011 01
    679
    2
    2011 01
    680
    3
    2011 01
    686
    4
    2011 01
    688
    13
    2011 01
    876
    1
    2011 01
    877
    1
    2011 01
    908
    4
    2011 01
    1082
    15
    2011 01
    20
    11
    2011 02
    544
    12
    2011 02
    679
    2
    2011 02
    680
    1
    2011 02
    686
    2
    2011 02
    688
    14
    2011 02
    876
    1
    2011 02
    908
    5
    2011 02
    usw usw

    ergeben sollte es eine tabelle

    city_id 2011 01 2011 02 2011 03 usw,dynamisch
    20 12 11 ...
    544 12 12 ...
    679 2 2 0
    usw ... ... ... ...

    wobei, wie rot markiert, auch 0 als 0 eingetragen werden soll.
    die frage dannach ist auf diversen foren verteilt, aber die antwort habe ich nicht gefunden...

  2. #22
    akretschmer ist offline Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.465

    Standard

    Zitat Zitat von emanymton Beitrag anzeigen
    also, kleine sache noch:
    ich stehe jetzt vor dem problem, das ein "Andreas Kretschmer" 2004 gehabt hat, zumindest laut google...

    fogender code:
    Code:
    select city_id,   count(id) as bestellungen, 
    to_char(submitted_at,'yyyy mm') as wann
    
     from cart_order where city_id in ( select city_id from (select
     sum(case when ( to_char(submitted_at,'yyyy mm')='2011 01') then 1 else 0 end) as anfang, 
    sum(case when ( to_char(submitted_at,'yyyy mm')='2011 07')  then 1 else 0 end) as ende ,
    city_id from orders group by city_id ) foo 
    where anfang>0 and ende>0 order by cast( ende as float)/cast(NULLIF(anfang,0)as float) desc limit 10 ) 
    
     group by city_id, wann  
    order by wann,city_id
    ergibt

    20
    12
    2011 01
    544
    12
    2011 01
    679
    2
    2011 01
    680
    3
    2011 01
    686
    4
    2011 01
    688
    13
    2011 01
    876
    1
    2011 01
    877
    1
    2011 01
    908
    4
    2011 01
    1082
    15
    2011 01
    20
    11
    2011 02
    544
    12
    2011 02
    679
    2
    2011 02
    680
    1
    2011 02
    686
    2
    2011 02
    688
    14
    2011 02
    876
    1
    2011 02
    908
    5
    2011 02
    usw usw

    ergeben sollte es eine tabelle

    city_id 2011 01 2011 02 2011 03 usw,dynamisch
    20 12 11 ...
    544 12 12 ...
    679 2 2 0
    usw ... ... ... ...

    wobei, wie rot markiert, auch 0 als 0 eingetragen werden soll.
    die frage dannach ist auf diversen foren verteilt, aber die antwort habe ich nicht gefunden...
    Ich kenne Deine Daten nicht, vermute aber, du suchst die Funktion COALESCE().


    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  3. #23
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.055

    Standard

    Ihr müsst da mit einbeziehen, das verschiedene Länder die Kalenderwochen anders berechnen.
    Eine allgemeingültige Funktion - eingebaut in die Datenbank - kann es da also nicht geben.

    Oh, und bezüglich Konferenz: wenn man da hinkommt, dann lernt man natürlich etwas.
    Das kannst du doch so deinem Arbeitgeber verkaufen, oder?
    Und da ihr PostgreSQL einsetzt, kann von deinem Arbeitgeber auch noch jemand mitkommen.
    Und Sponsoringmöglichkeiten bieten wir auch an ;-)
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

Seite 3 von 3 ErsteErste 123

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 19.05.2011, 19:32
  2. Antworten: 4
    Letzter Beitrag: 29.09.2010, 08:20
  3. Kalenderwochen-Funktion
    Von basti123456 im Forum SQL
    Antworten: 6
    Letzter Beitrag: 22.06.2006, 10:37

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum