sql >> Databáze >  >> RDS >> Sqlserver

Desetinné hodnoty v SQL pro dělení výsledků

Jen jiný přístup:

SELECT col1 * 1.0 / col2 FROM tbl1

Vynásobením 1,0 se z celého čísla stane float numeric(13,1) a tak funguje jako typcast, ale s největší pravděpodobností je pomalejší.

Trochu kratší varianta, kterou navrhl Aleksandr Fedorenko v komentáři:

SELECT col1 * 1. / col2 FROM tbl1

Efekt by byl v podstatě stejný. Jediný rozdíl je v tom, že výsledek násobení by v tomto případě byl numerický (12,0).

Hlavní výhoda:méně rozvláčný než jiné přístupy.



  1. Pole v klauzuli IN() Oracle PLSQL

  2. Jak deklarovat místní proměnné v postgresql?

  3. Vyloučení spojení:Když SQL Server odstraní nepotřebné tabulky

  4. Více o CXPACKET Waits:Skewed Parallelism