Avko |
08.08.2016 13:50 |
Predmet:Re: MySQL upiti nad jednom tablom
neznam dali je to ovo
(neznam zasto nemam manage attachments u brzom odgovoru vec moram potvrditi(poslati) odgovor, a onda izaberem opciju uredi pa unesem razlog uredenja i onda imam tek opciju manage attachment.) |
Prilozi: voce.sql.zip (Velicina datoteke:651 Bajt)
|
zxz |
08.08.2016 14:14 |
Predmet:Re: MySQL upiti nad jednom tablom
U brzom odgovoru ga nema ali ako hoces atach onda klini na dodaj odgovor |
zxz |
08.08.2016 16:52 |
Predmet:Re: MySQL upiti nad jednom tablom
SELECT * ,DATE_FORMAT(datum,'%d.%m.%y') AS Dat,DATE_FORMAT(datum,'%y-%d-%m')as dd, CURDATE() as aaa FROM `prodaja` WHERE 1
Evo ti ovo i sve ce ti se reci.
Nemozes datum stavljati kao strin.
On onda i ostaje string. |
Avko |
08.08.2016 17:00 |
Predmet:Re: MySQL upiti nad jednom tablom
evo vidim da kod formatiranja datuma koji je deklariran kao string ne dobijemo formate koje mozemo obradivati kao datume u mysql. Treba datum stavljati kao datum. Vidim da je standard za mysql GGGG-MM-DD pa mislim da bi u buduce morao tako i uvoziti tj u txt fajlu staviti string datum u obliku GGGG-MM-DD
hvala |
Avko |
26.08.2016 13:36 |
Predmet:Re: MySQL upiti nad jednom tablom
ne razumijem select u select, a i inner mi je stran pa bi molio pomoc
1.zadatak (rijesen)
sa SELECT upitom trebao bi izdvojiti za jabuke i koje su jos vocke imale istu prodaju za taj datum kao i jabuke, ako je prodaja 0, onda ne gledamo za druge vocke.
ovo radi:(dexxxl)
SELECT t1.datum, t1.kg, t1.ime
FROM ProdajaVoca AS t1 INNER JOIN ProdajaVoca AS t2 ON t1.kg = t2.kg AND t1.datum = t2.datum
WHERE t2.ime='jabuka' AND (t2.kg <> 0 OR t1.ime='jabuka')
ORDER BY t1.datum;
2.zadatak
sa SELECT upitom trebao bi izdvojiti za jabuke i koje su jos vocke imale istu prodaju za taj datum kao i jabuke, ako je prodaja 0, onda ne gledamo za druge vocke, a jos dodati i to da uzima u obzir porijeklo voca iz zemalja iz koje su i jabuke. Znaci treba ubaciti negdje da gleda i porijeklo voca iz druge tablice.
Prikaz mora biti isti kao i u prvom upitu, sa ovim gore upitom pokaze mi i banane koje nisu iz EU.
Radi se o dvije tablice . Sve cu prikvaciti da vam je lakse raditi da ne radite napamet
ja sam napravio ovo:
PreuzmiIzvorni kôd (Text):SELECT t1.datum, t1.kg, t1.ime
FROM prodajavoca AS t1
INNER JOIN prodajavoca AS t2 ON t1.kg = t2.kg
AND t1.datum = t2.datum
INNER JOIN voce AS t3 ON t1.ime = t3.ime
AND t3.porijeklo <> 'EU' --> ovdje bi htio da mi uzme porijeklo izabranog voca i to komparira
WHERE t2.ime = 'jabuka'
AND (
t2.kg <>0
OR t1.ime = 'jabuka'
)
ORDER BY t1.datum
LIMIT 0 , 30
|
Prilozi: proba.rar (Velicina datoteke:719 Bajt)
|
Avko |
28.08.2016 07:46 |
Predmet:Re: MySQL upiti nad jednom tablom
rijesio to na cudan nacin
imeVoca=jabuka
2 sql upita, 1 sql upit za porijeklo
query=SELECT porijeklo FROM voce WHERE ime = imeVoca
rezultat = mysql_query($query) or die(mysql_error())
if (mysql_num_rows(rezultat))
{
//sve je smjesteno u jedan "0" red
porijeklo=mysql_result($rezultat,0)
}
//onda sam ugradio to u drugi upit
podaci=mysql_query(
SELECT t1.datum, t1.kg, t1.ime
FROM prodajavoca AS t1
INNER JOIN prodajavoca AS t2 ON t1.kg = t2.kg
AND t1.datum = t2.datum
INNER JOIN voce AS t3 ON t1.ime = t3.ime
AND t3.porijeklo = porijeklo
WHERE t2.ime = imeVoca
AND (t2.kg <>0 OR t1.ime = imeVoca)
ORDER BY t1.datum
LIMIT 0 , 30
or die(mysql_error()) |
dex |
01.09.2016 22:43 |
Predmet:Re: MySQL upiti nad jednom tablom
Napravi view ProdajaSaPoreklom
PreuzmiIzvorni kôd (SQL):SELECT prodajavoca.datum,prodajavoca.kg, prodajavoca.ime, voce.porijeklo
FROM prodajavoca INNER JOIN voce ON prodajavoca.ime = voce.ime
Onda sledeci
PreuzmiIzvorni kôd (SQL):SELECT t1.datum, t1.kg, t1.ime
FROM ProdajaSaPoreklom AS t1 INNER JOIN ProdajaSaPoreklom AS t2 ON t1.kg = t2.kg AND t1.datum = t2.datum AND t1.porijeklo = t2.porijeklo
WHERE t2.ime='jabuka' AND (t2.kg <> 0 OR t1.ime='jabuka')
ORDER BY t1.datum;
Vezbe radi probaj da prvi upit ugnezdis u drugi
PS kod ubacivanja koda izaberite SQL, ako izaberete MySQL ubaci "djubre" |
Avko |
20.09.2016 13:21 |
Predmet:Re: MySQL upiti nad jednom tablom
malo moram prouciti ovo:
pa cu probati rijesiti, ako ne javit cu da neznam.
Nemojte jos nista odgovoriti dok ne probam sam to. |
Avko |
06.10.2016 12:50 |
Predmet:Re: MySQL upiti nad jednom tablom
Citiraj dexxxl:Napravi view ProdajaSaPoreklom
PreuzmiIzvorni kôd (SQL):SELECT prodajavoca.datum,prodajavoca.kg, prodajavoca.ime, voce.porijeklo
FROM prodajavoca INNER JOIN voce ON prodajavoca.ime = voce.ime
Onda sledeci
PreuzmiIzvorni kôd (SQL):SELECT t1.datum, t1.kg, t1.ime
FROM ProdajaSaPoreklom AS t1 INNER JOIN ProdajaSaPoreklom AS t2 ON t1.kg = t2.kg AND t1.datum = t2.datum AND t1.porijeklo = t2.porijeklo
WHERE t2.ime='jabuka' AND (t2.kg <> 0 OR t1.ime='jabuka')
ORDER BY t1.datum;
Vezbe radi probaj da prvi upit ugnezdis u drugi
sve si mi napiso ja sam samo trebo prepisati, ali jednu stvar nisi uzeo u obzir:
ja neznam napraviti view pogled. Nisam znao do danas. Istrazivajuci internet i isprobavajuci razne zadatke u jednom sam trenutku zapazio nakon sto sam napisao ovo:
PreuzmiIzvorni kôd (SQL):CREATE VIEW ProdajaSaPoreklom
AS SELECT datum,kg,a.ime,porijeklo
FROM prodajavoca a, voce b
WHERE a.ime=b.ime
i ponovo sam to napisao te mi javi error poruku
#1050 - Table 'ProdajaSaPoreklom' already exists
nije mi bilo jasno kako tabla vec postoji kad ju nisam napravio. Tada bacim pogled na table koje postoje i vidim da se gornjim SQL-om formirala. Udem u nju lagano ne znajuci i u strahu sto me ceka i vidjeh da su unjoj spojeni podaci iz tabli prodajavoca i voce
nasmijah se i onda sam upisao ovo tvoje, dakle prepisah :
PreuzmiIzvorni kôd (SQL):SELECT t1.datum, t1.kg, t1.ime
FROM ProdajaSaPoreklom AS t1 INNER JOIN ProdajaSaPoreklom AS t2 ON t1.kg = t2.kg AND t1.datum = t2.datum AND t1.porijeklo = t2.porijeklo
WHERE t2.ime='jabuka' AND (t2.kg <> 0 OR t1.ime='jabuka')
ORDER BY t1.datum;
i dobih rezultat bez banana
hvala ti! |