Article View: pl.comp.bazy-danych
Article #183055Re: mysql i MAX
From: Paweł Matejski
Date: Mon, 22 Jun 2009 22:47
Date: Mon, 22 Jun 2009 22:47
30 lines
2452 bytes
2452 bytes
Piotr Keplicz wrote: > Jacek: >>>> Do tego nie trzeba mądrej głowy. Wystarczy stworzyć tabelę i uruchomić >>>> zapytanie. Wynik zapytania da odpowiedź na pytanie. Nie trzeba też >>>> czytać dokumentacji. >>> Można też rzucić monetą - szybciej, a wynik równie pewny. >> Ano mozna, ale czy problemem jest stworzyc tabele o 3 kolumnach i 5-ciu >> wierszach i przetestowac powyzsze zapytanie? >> Czyz nie testuje sie w ten sposob roznego typu problemow? >> Jezeli dla 5-ciu wierszy zadziala prawidlowo, to dla miliona zadziala >> rowniez dobrze, prawda? > > Nie. > > SELECT x, y, MAX(z) FROM t GROUP BY x > > Po pierwsze, zadziała to bodaj tylko w MySQL. > Po drugie, sposób wyboru y jest nieokreślony. Skąd to wiadomo? Podpowiada to > zdrowy rozsądek i dokumentacja. > Biorąc pod uwagę losowość wyboru y, prosty test może doprowadzić do błędnych > wniosków. W tym sęk, że wynik nie jest losowy, a nieokreślony. MySQL nie losuje wierszy, ale zwraca je tak jak mu "wygodniej". W efekcie możesz dostawać identyczne wyniki dopuki nie zaczniesz mieszać w tabeli (dodawać i kasować wiersze). A do pytającego - dokumentacje warto czytać. Można się z niej dowiedzieć po co taka konstrukcja jest i kiedy warto jej używać (opisane jest to chyba przy okazji GROUP BY). -- P.M.
Technical Details
Message-ID:
<r8e5h6-dn8.ln1@nixxie.mibm>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mailReferences:
<h1nvf2$cki$1@news.onet.pl> <h1o0n5$8d9$1@nemesis.news.neostrada.pl> <h1o08l$f3n$1@news.onet.pl> <h1o9j5$qlq$1@inews.gazeta.pl> <h1oc5s$odv$1@nemesis.news.neostrada.pl> <o7j31sa417m1$.xamtmz7sdf91$.dlg@40tude.net> <h1og2t$11j$1@nemesis.news.neostrada.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: Paweł Matejski <madej@nospam.madej.pl.eu.org> Newsgroups: pl.comp.bazy-danych Subject: Re: mysql i MAX Date: Tue, 23 Jun 2009 00:47:23 +0200 Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 30 Message-ID: <r8e5h6-dn8.ln1@nixxie.mibm> References: <h1nvf2$cki$1@news.onet.pl> <h1o0n5$8d9$1@nemesis.news.neostrada.pl> <h1o08l$f3n$1@news.onet.pl> <h1o9j5$qlq$1@inews.gazeta.pl> <h1oc5s$odv$1@nemesis.news.neostrada.pl> <o7j31sa417m1$.xamtmz7sdf91$.dlg@40tude.net> <h1og2t$11j$1@nemesis.news.neostrada.pl> NNTP-Posting-Host: fcu34.internetdsl.tpnet.pl Mime-Version: 1.0 X-Trace: inews.gazeta.pl 1245712084 335 83.13.72.34 (22 Jun 2009 23:08:04 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Mon, 22 Jun 2009 23:08:04 +0000 (UTC) X-User: madejp In-Reply-To: <h1og2t$11j$1@nemesis.news.neostrada.pl> User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.9) Gecko/20080110 Thunderbird/2.0.0.9 Mnenhy/0.7.4.666 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit