Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 10 odgovora
  • 4.215 pregleda

Najnovija ↓

Prosli mjesec pomoc 12.01.2007. u 14:06 · pre 241 mesec #1
Imam još jedan problem :) i vazda ja sa nekim problemom

Sljedeći pod upit vraća sadašnji mjesec tj tekući i sa nečim ga uspoređujem

SELECT DISTINCT nešto1, nešto2
FROM tablica1
WHERE (DATEPART(month, datum_tekući) =
(SELECT DISTINCT DATEPART(month, GETDATE()) AS Expr1
FROM tablica1 AS Expr2))
GROUP BY nešto1

MENI TREBA PROŠLI MJESEC, ali kad stavim -1 onda mi ako je prvi mjesec vrati nulu, a trebao bi 12.
Re: Prosli mjesec pomoc 12.01.2007. u 14:38 · pre 241 mesec #2
Dal si probao u pod upitu umjesto DATEPART upotrijebiti DATEADD:

Code:

SELECT DISTINCT nešto1, nešto2
FROM tablica1
WHERE (DATEPART(month, datum_tekući) =
(SELECT DISTINCT DATEADD(month, -1, GETDATE()) AS Expr1
FROM tablica1 AS Expr2))
GROUP BY nešto1


jer sad 01 mjesec vraca na 12.
Re: Prosli mjesec pomoc 12.01.2007. u 14:53 · pre 241 mesec #3
A umesto one sintakse za tekuci mesec koristi
SELECT MONTH('2006-01-01')
i ona ti vraca mesec.
Potpis
logic_rabbit (MCAD,MCSD,MCT,MCTS-
Windows development,MCPD)
Re: Prosli mjesec pomoc 12.01.2007. u 15:19 · pre 241 mesec #4
Da jeste ali nakon toga ako mi treba prošli mjesec vrati 0 ako je tekući prvi mjesec
Re: Prosli mjesec pomoc 12.01.2007. u 15:48 · pre 241 mesec #6
Probaj DATEDIFF funkciju izmedju 2 datuma.
Potpis
logic_rabbit (MCAD,MCSD,MCT,MCTS-
Windows development,MCPD)
Re: Prosli mjesec pomoc 12.01.2007. u 15:57 · pre 241 mesec #7
Citat:
west_herc: Imam još jedan problem :) i vazda ja sa nekim problemom

Sljedeći pod upit vraća sadašnji mjesec tj tekući i sa nečim ga uspoređujem

SELECT DISTINCT nešto1, nešto2
FROM tablica1
WHERE (DATEPART(month, datum_tekući) =
(SELECT DISTINCT DATEPART(month, GETDATE()) AS Expr1
FROM tablica1 AS Expr2))
GROUP BY nešto1

MENI TREBA PROŠLI MJESEC, ali kad stavim -1 onda mi ako je prvi mjesec vrati nulu, a trebao bi 12.



Onaj ugnjezdeni select distinct ti je u ovom kontekstu suvisan (ne vuces ni jedan podatak iz tabele tablica1)
Ako zelis da vratis sve record-e iz prethodnog meseca mozes na sledeci nacin:
Code:

SELECT DISTINCT nešto1, nešto2
FROM         tablica1
WHERE   
where convert(char(7), datum_tekući, 120) = convert(char(7), dateadd(month, -1, getdate()), 120)

convert(char(7), datum_tekući, 120) - vraca godinu i mesec iz tekuceg datuma u formatu 'GGGG-MM'
convert(char(7), dateadd(month, -1, getdate()), 120) - vraca prethodni mesec u formatu 'GGGG-MM'
Re: Prosli mjesec pomoc 12.01.2007. u 15:57 · pre 241 mesec #8
Da ali to je samo kompliciranije odrediti početak i kraj mjeseca i to svakog. Mislim da se samo vše i više petljam
Re: Prosli mjesec pomoc 12.01.2007. u 16:16 · pre 241 mesec #9
Evo ga drugovi, ja sam rješio na ovaj način:

Code:

SELECT DISTINCT nešto1, nešto2, nešto3
FROM         tablica
WHERE     (DATEPART(month, moj_datum) =
                          (SELECT DISTINCT DATEPART(month, DATEADD(month, - 1, GETDATE())) AS Expr1
                            FROM          tablica AS Expr2))
GROUP BY nešto1, nešto2, nešto3


Ipak hvala svima još jednom na pomoći

Re: Prosli mjesec pomoc 12.01.2007. u 16:19 · pre 241 mesec #10
Citat:
west_herc: Evo ga drugovi, ja sam rješio na ovaj način:

Code:

SELECT DISTINCT nešto1, nešto2, nešto3
FROM         tablica
WHERE     (DATEPART(month, moj_datum) =
                          (SELECT DISTINCT DATEPART(month, DATEADD(month, - 1, GETDATE())) AS Expr1
                            FROM          tablica AS Expr2))
GROUP BY nešto1, nešto2, nešto3


Samo obrati paznju da poredis samo mesece bez godina, sto znaci da ako imas podatke iz prethodnih godina da ce ti pokupiti i njih.

Re: Prosli mjesec pomoc 12.01.2007. u 17:47 · pre 241 mesec #11
OK, kod mene se samo mjeseci poređuju. Mislim ima milion načina da se ovo uradi. Bolji mi je način od DarkMana ali neda mi se sad prepravljat.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme