Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele

[es] :: MySQL :: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele

[ Pregleda: 4031 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Orome
programer

Član broj: 273201
Poruke: 115
81.93.74.*



+1 Profil

icon Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 13:44 - pre 77 meseci
Pozdrav, potreban mi je upit koji vraca zadnji dan svakog meseca iz izabranog perioda. Ulazni parametri su mi pocetni i krajnji datum. To mi treba bez tabele jer kapiram da je brze nego da skeniram moju tabelu u kojoj imam mnogo redova pa izvlacim ovaj podatak.

Pisano nekim pseudo kodom ovo mi treba :

SELECT LAST_DAY(_date) FROM DUAL WHERE _date BETWEEN start_date AND end_date

Ovaj kod radi nad mojom tabelom ali ima jako puno redova i nemam mogućnost da rezultat skratim tako da radi brzo :

SELECT LAST_DAY(t1.date) date
FROM t1
WHERE t1.datum>=('2017-07-01') AND t1.datum<=('2017-08-31')
GROUP BY MONTH(t1.date)

Ocekivani rezultat ovog upita su 2 reda jer je pocetni datum u julu a krajnji u avgustu, znaci 2 mjeseca, evo rezultata :
31.07.2017
31.08.2017


Imam osecaj da se ovo mora da moze da se izvuce bez tabela, putem one DUAL tabele ili cega li. Nisam mogao pronaci kako da to izvedem. Ako moze da se ne predlaze optimizacija mog upita koji sada radi jer sam to vec probao i ne uspeva.

Hvala unapred.
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 15:11 - pre 77 meseci
Šta je dual tabela?
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p3-92.bvcom.net.



+1064 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 15:21 - pre 77 meseci
Svaki jezik danas ima biblioteku za manipulaciju datumima, ne kapiram sta ce mu baza za ovo?
 
Odgovor na temu

Orome
programer

Član broj: 273201
Poruke: 115
*.telrad.net.



+1 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 15:23 - pre 77 meseci
Dual tabela je Dummy tabela ukoliko hoces da nesto probas pa ti treba select a nemas tabelu. Mozes napisati FROM Dual i MySql ne javlja gresku.


Inace, pronasao sam i doradio upit na netu koji radi. Postavicu ga ovde sutra nisam pri racunaru sada.
 
Odgovor na temu

Orome
programer

Član broj: 273201
Poruke: 115
*.telrad.net.



+1 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 15:30 - pre 77 meseci
@Branimir Maksimovic ovo mi treba u bazi podataka i deo je veceg upita. Trenutni upit je jako spor i ukapirao sam da ce nacin bez moje tabele raditi mnogo brze. Postavicu sutra upit pa prokomentarisi slobodno.
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 15:58 - pre 77 meseci
Citat:
Branimir Maksimovic:
Svaki jezik danas ima biblioteku za manipulaciju datumima, ne kapiram sta ce mu baza za ovo?

Često se u praksi dešava da se zahtev promeni sa "poslednji dan u mesecu" na "poslednji radni dan u mesecu", i onda ti biblioteka za manipulaciju datumima ne znači ništa, a ako radiš sa bazom promena može da bude trivijalna (naravno, zavisi i kako si implementirao stvari u bazi). Ne kažem da uvek treba raditi sa bazom, ali nekad ima logike i ne razmatrati druga rešenja.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p3-92.bvcom.net.



+1064 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 16:36 - pre 77 meseci
Kako god, kad nemas tabelu sa kojom radis uvek je lakse izvesti racunicu u necemu drugom osim SQL-a ;p
 
Odgovor na temu

Orome
programer

Član broj: 273201
Poruke: 115
*.telrad.net.



+1 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 17:03 - pre 77 meseci
Branimire treba mi upit sa kolonom poslednji datum u mesecu sa presekom na taj dan i jos mnogo toga. sve to eksportujem u Excel. zelim da to radim iz baze jer su mi svi podaci tu. zasto bih to radio u programskom jeziku kad su mi svi podaci u bazi?

i jedan savet, umesto da pitas sta ce ti to trebao bi da pomognes ako mozes a ne da pises postove koji apsolutno ne pomazu?! ne vidim svrhu tvojih postova.

sutra cu postaviti upit.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p3-92.bvcom.net.



+1064 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 17:14 - pre 77 meseci
Nijednom nisam odgovorio tebi nego Jablanu... svrha mog posta je da ti pomogne, ako ti to ne vidis, svakom svoje...
 
Odgovor na temu

oracle_kid

Član broj: 266646
Poruke: 219



+18 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 18:08 - pre 77 meseci
nista ne razumem, pa za mysql nema Date funkciju
koja bi mogla kao
select lastdate(date(prvidatum) ) as begindate,lastdate(date(drugidatum)) as enddate itd..
 
Odgovor na temu

Orome
programer

Član broj: 273201
Poruke: 115
*.telrad.net.



+1 Profil

icon Re: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele15.11.2017. u 19:03 - pre 77 meseci
ovaj kod mi daje ono sto sam trazio, promenio sam ga onako kako mi odgovara, za izvrsavanje nije potrebno imati nijednu tabelu. izvrsi se veoma brzo, mnogo brze nego sto sam ja mogao izvuci iz svoje tabele. period sam namestio od 01.07.2017 do 15.11.2017.

Code:

SELECT 
LAST_DAY(DATE_FORMAT(m1, '%Y-%m-%d')) datum

FROM
(
SELECT 
('2017-07-01' - INTERVAL DAYOFMONTH('2017-07-01')-1 DAY) 
+INTERVAL m MONTH AS m1
FROM
(
SELECT @rownum:=@rownum+1 AS m FROM
(SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) t1,
(SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) t2,
(SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) t3,
(SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4) t4,
(SELECT @rownum:=-1) t0
) d1
) d2 
WHERE m1<='2017-11-15'
ORDER BY m1
 
Odgovor na temu

[es] :: MySQL :: Potreban last_day datum meseca u izabranom periodu bez tabele, dummy upit putem DUAL tabele

[ Pregleda: 4031 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.