SQL Frage

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/sql_frage_84857/page_1 - zur Vollversion wechseln!


Umlüx schrieb am 05.07.2003 um 16:43

Hab ein kleines Problem da ich leider nur ein SQL n00b bin

ich will alle werte in einer spalte durch einen angegebenen wert dividiern. so weit so gut.
doch soll das ergebnis dabei immer ganzzahlig bleiben und >=1 !
wie stell ich das nun an?

danke!!


MDK schrieb am 05.07.2003 um 16:48

und was soll passieren, wenn der gerundete Wert der Division 0 ist?


Umlüx schrieb am 05.07.2003 um 16:49

dann soll er 1 sein


Smoldi schrieb am 05.07.2003 um 16:52

verwende round() zum runden und für die zahlen die dann 0 sind mach ein zweites query, das sie auf 1 setzt.


Umlüx schrieb am 05.07.2003 um 16:53

round().. interessant :D
danke


Smoldi schrieb am 05.07.2003 um 16:54

bitte :)


MDK schrieb am 05.07.2003 um 17:08

wenn Du generell aufrunden willst, kannst Du auch ceiling() verwenden, oder je nach DBMS gibt es auch ein If oder IIf.

Ein union join ist nämlich von der Performance her so ziemlich das schlechteste was man machen kann.


atrox schrieb am 05.07.2003 um 19:49

für die akten: welche RDBMS ? gerade bei diesen funktionen unterscheiden sich die sql-dialekte sehr.

bei oracle heißen die betreffenden funktionen zb ceil(),floor(),round(),greatest(),least() und das if/iff heißt decode().

select greatest(1,ceil(splatenname/5)) from tablename;




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025