@hans, iz bgd-a sam, hvala na ponudi, ali mnogo vruce za klopu :D ... bice uskoro #mdevday (zadnji bio 2019
https://www.mcloud.rs/blog/developers-mday-2019-u-beogradu/ ) gde cu neki klinac pricati o mysql-u pa dodji, popicemo pivo :)
elem, da ti ne filozofiram previse, obrati paznju vrlo dobro na djokin post
Citat:
Relacione baze podataka NE GARANTUJU da je redosled redova u tabeli isti kao i redosled po kojima su redovi uneti. Drugim rečima redosled redova je NEUREĐEN.
mysql je kroz godine rada glumeci pravi sql server naucio usere razne pogresne stvari (pricacu bas o tome na #mdevday u julu) i ljudi su navikli da ocekuju neke stvari koje nisu deo standarda... sa novim mysql-om koji prilicno dobro prati standard to vise nije "ocekivano" tako da moras da obratis paznju na te stvari. U tvoj slucaju, za ovaj primer, koliko vidim treca kolona u ovoj slici je neki datetime (to bi bilo bolje da je neki timestamp al ajde), ako je to vreme koje ti pije vodu onda bi mogao da koristis tu kolonu za order pa onda uradis nesto tipa
Code:
SELECT COUNT(*) FROM t1 WHERE datetimekolona > (SELECT MAX(datetimekolona) FROM t1 WHERE kolona IS NOT NULL);
naravno ocekujes da je `datetimekolona` indexirana :) i da je `kolona` indexirana mada racunaj na penalty ovde posto ako ti je kardinalnost `kolona` tako mala (null i D) mozes da imas perf. penalty tu pa ako se ispostavi da ti je to sporo, a vec koristis trigere, mozda ti je korisnije da imas posebnu tabelu gde ces da cuvas taj datetime za not null vrednost preko nekog trigera (tabela sa samo jednim slogom)
dalje, 5.x nema bas CTE kako treba, ako koristis 8.0 pogledaj malo CTE upit koji ti je pisao dr ladovina (prvi upit koji ti je napisao, drugi je obican, isti kao ovo sto sam ti ja napisao sto ti radi), cisto, ako nisi radio sa CTE vreme je, treba naucis, mysql 8.0 ce uskoro ponuditi i neke optimizacije bolje za CTE nego sto ima sada..
takodje, ovo sto ti je napisao dr ladovina da
Citat:
imas opasan problem sa dizajnom
nemamo saznjanja sta pravis, na cemu radis, koja je istorija projekta i slicno, ali u velikom procentu ovakav zahtev opravdava taj komentar... ako nisi na odrzavanju vec u razvoju, razmisli malo bolje o dizajnu, ako je rec o odrzavanju necega sto odavno radi, onda jbg, svi znamo da budzenje nije dobar pristup ali je nekad sve sto klijent hoce da plati, sa tvoje strane jedino budi siguran da mu objasnis koliki tehnicki dug pravi svakim tim budzenjem i probaj da to dokumentujes negde da ti se ne vrati kao bumerang i pesma :D