[linux-l] SQL

Steffen Dettmer steffen at dett.de
Do Okt 26 10:13:24 CEST 2006


* Volker Grabsch wrote on Thu, Oct 19, 2006 at 17:41 +0200:
> > 	SELECT berufsbezeichnung FROM beruf WHERE berufs_id IN (
> > 	  SELECT berufs_id FROM stellen where stellen_id = 1
> > 	)
> 
> Man muss die Performance ja nicht mit Gewalt drosseln. Zumal das nun
> noch unübersichtlicher ist

lol

lustiger Thread .)

> Ich meine, wenn ich ein Java-Programm schreibem dass die Zahlen von 1
> bis 1.000.000 zusammenzählt, dann erzeuge ich ja auch nicht erst einen
> Vektor oder ne Liste mit den 1.000.000 Zahlen, iteriere darüber, und
> zeige das Ergebnis an. :-)

Nee klar, die Zahlen lieber in ein XML Dokument schreiben und via SOAP
an den ApplikationServer schicken, der ein "summarize" implementiert. 

> (bevor die Gauß-Kenner jetzt kommen: Jaja, man addiert auch nicht alle
> Zahlen zusammen, sondern kommt mit einer Inkrementierung, einer
> Multiplikation und einer Halbierung aus. Aber habt ihr euch schonmal
> gefragt, wie man letzteres tut, ohne dabei den Zahlenbereich dabei
> zu sprengen?

Halbierung ohne dabei den Zahlenbereich zu sprengen? Einmal binär
nach rechts schieben...

Multiplikation geht natürlich so nicht, aber selbst echtes Adieren ist
nicht sicher. Das oben (1mio) passt ja auch nicht in 32 Bit.

> Was ist, wenn das Ergebnis auf ner 32-bit-Maschine ausgerechnet wird
> und genau ein 32 Bit groß ist?

hat man Mist gebaut, weil man einen 64 Bit Typen hätte nehmen sollen lol

> Dann wäre die Multiplikation ne Katastrophe, aber die Addierschleife
> würde korrekt arbeiten.)

Ja, daher sollte man auch erst halbieren, aber da muss man wohl ne
ungerade/gerade Fallunterscheidung machen (was binär bei unsigned ints
wieder einfach ist).

So, jetzt mal noch was: gibt es deinen extrem konstruierten Grenzfall
überhaupt? Also eine Reihe derartiger Zahlen, deren Summe 4.294.967.296
ist? Wie ist die grösste (zum Nachrechnen für mich :))

Halte ich für ziemlich unwahrscheinlich, dass es die gibt :-)

Aber wer implementiert sowas schon auf der fast-assembler-Ebene?

oki,

Steffen

-- 
Dieses Schreiben wurde maschinell erstellt,
es trägt daher weder Unterschrift noch Siegel.





Mehr Informationen über die Mailingliste linux-l