Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

sql zapytanie - zapytanie sql wyciągnięcie konkretyn danych z tabeli SQL

03 Maj 2016 08:34 2292 9
  • Poziom 9  
    Witam serdecznie potrzebuję wyciągnąć następujące dane z tabeli Microsoft SQL Server 2012 poniżej opiszę funkcjonalność danych.
    Sklep prowadzi sprzedaż całodobową, w tabeli paragon za zapisane wszystkie transakcje wykonane na kasie fiskalne o określonej godzinie i dacie, my potrzebujemy wyrzucić dane tylko pomiędzy godziną (KOLUMNA DataCzas) 2016-05-02 22:00:00 a 06:00:00 z podsumowaniem ( KOLUMNA Gotowka, Karta, Bony, Czek, InneFPla)
    Chcemy uzyskać wartość sprzedaży między tymi godzinami w rozbiciu na formy płatności, oczywiście w programie jest taki raport gdzie podajemy zakres daty i godziny 2016-05-01 22.00 do 2016-05-10 06.00 ale wtedy liczy wszystko od daty początkowej do daty końcowej wraz z godzinami dziennymi w dniach 02 do 09 a nas interesują same nocki lub konkretny zakres godzin i dat. Jestem wstanie wykonać taki raport ale dzień po dniu 2016-05-01 22:00:00 do 2016-05-02 06:00:00 , ale to jest zbyt czasochłonne może da się to uprościć. Poniżej umieszczam zrzut tabeli SQL

    sql zapytanie - zapytanie sql wyciągnięcie konkretyn danych z tabeli SQL

    https://obrazki.elektroda.pl/2803906200_1462257175.png
  • Moderator Programowanie
    Kod: sql
    Zaloguj się, aby zobaczyć kod
  • Poziom 28  
    Po InneFormyPlatnosci nie powinno być przecinka.
  • Poziom 28  
    A umiesz czytać? Masz napisane invalid column name.
  • Moderator Programowanie
    Moja wina :/
    Pisałem to szybko i te wszystkie podkreślone czerwonym wężykiem nazwy pól wpisałem źle.
    Bon zamiast Bony
    ceek zamiast Czek
    karat zamiast Karta
    InneFpla zamiast InneFPlat

    Powinno to wyglądać tak :

    Kod: sql
    Zaloguj się, aby zobaczyć kod
  • Poziom 9  
    Super dział ok wylicza tylko trochę źle bo nie wycina mi samych nocek tylko liczy od dnia zadania np. 18-04-2016 od godziny np. 22.00 do dnia 20 do godziny 7.00 tak samo jak w raporcie w programie, a ja chciałem żeby zliczył mi wszystkie dni z zakresu daty i tylko z zakresu godzin od 22.00 do 7.00 na printscr poniżej policzył tak dzień od 18-04-2016 od 22.00 do 18-04-2016 do 23.59 + 19-04-2016 od 0.00 do 19-04-2016 do 23.59 + 20-04-2016 od 0.00 do godziny 7.00 gotówka 2229,13 itd


    sql zapytanie - zapytanie sql wyciągnięcie konkretyn danych z tabeli SQL


    a zobacz jakie powinny być wyniki : od 18-04-2016 od 22.00 do 19-04-2016 do 7.00 gotówka 167,35 itd

    sql zapytanie - zapytanie sql wyciągnięcie konkretyn danych z tabeli SQL

    i od 19-04-2016 od 22.00 do 20-04-2016 do godziny 7.00 gotówka 146,06 itd

    Dodano po 16 [minuty]:

    sql zapytanie - zapytanie sql wyciągnięcie konkretyn danych z tabeli SQL

    jeszcze jeden dzień od 19-04-2016 od 22.00 do 20-04-2016 do godziny 7.00 gotówka 146,06 itd
  • Moderator Programowanie
    Kod: sql
    Zaloguj się, aby zobaczyć kod
  • Poziom 9  
    Bardzo dziękuję za pomoc może uda się doprowadzić to do końca liczy tylko również pomija pewne rekordy poniże printscr z zakresu od 18-04-2016 od 22 do 19-04-2016 do 3 mamy kwotę gotówka 19,57 :

    sql zapytanie - zapytanie sql wyciągnięcie konkretyn danych z tabeli SQL


    A zobacz zrobiłem selecta i są 4 paragon on liczy tylko 3 pierwsze z 18 a 19 nie bierze pod uwagę :

    sql zapytanie - zapytanie sql wyciągnięcie konkretyn danych z tabeli SQL

    powinna być kwota gotówka 32,27

    Dodano po 5 [minuty]:

    Jest ok liczy tak jak powinno być popełniłem błąd nie wpisałem zakresu godzin po dacie

    where DataCzas>='2016-04-18 22:00:00' :D
    and DataCzas<='2016-04-20 06:00:00' :D
    and (DATEPART(HOUR, dataCzas)>=22 OR DATEPART(HOUR, dataCzas)<6)

    Bardzo dziękuję za pomoc teraz działa prawidłowo

    Dodano po 3 [minuty]:

    sql zapytanie - zapytanie sql wyciągnięcie konkretyn danych z tabeli SQL

    liczy prawidłowo

    Pozdrawiam i bardzo dziękuję