🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.bazy-danych
Article #183057

Re: mysql i MAX

#183057
From: Paweł Matejski
Date: Tue, 23 Jun 2009 11:51
29 lines
2684 bytes
Piotr Keplicz wrote:
> Paweł Matejski:
>>> 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 dopóki nie zaczniesz mieszać w tabeli (dodawać i kasować
>> wiersze).
> 
> A w praktycznych zastosowaniach bazodanowych istnieje jakaś istotna różnica 
> pomiędzy porządkiem "nieokreślonym" a "losowym"?

Oczywiści. Weźmy taki przykład: y - treść reklamy, z - cena jaką reklamodawca oferuje za reklamę. No i zasada, którą
realizuje podobne zapytanie do tego - prezentować jedną reklamy wśród tych, którzy oferują najwyższą cenę.
select y,z from t order by z desc limit 1
I załóżmy, że masz 3 reklamy z najwyższą ceną. Jak nic nie zmienisz w tabeli t, to w na 99% będzie się wyświetlała cały
czas ta sama reklama.

A poza tym rozmawiamy o dochodzeniu do pewnych wniosków na podstawie sprawdzania doświadczalnego. W przypadku tego
zapytania, jeśli wprowadzimy nie takie dane jak trzeba, to mamy spore szanse dojść do błędnych wniosków, niezależnie od
tego ile razy wykonamy select.

-- 
P.M.
Technical Details
Message-ID: <u6s6h6-8uv.ln1@nixxie.mibm>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
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> <r8e5h6-dn8.ln1@nixxie.mibm> <h1q356$52k$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 13:51:25 +0200
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 29
Message-ID: <u6s6h6-8uv.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> <r8e5h6-dn8.ln1@nixxie.mibm> <h1q356$52k$1@nemesis.news.neostrada.pl>
NNTP-Posting-Host: fcu34.internetdsl.tpnet.pl
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1245758883 14951 83.13.72.34 (23 Jun 2009 12:08:03 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Tue, 23 Jun 2009 12:08:03 +0000 (UTC)
X-User: madejp
In-Reply-To: <h1q356$52k$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