sql >> Databáze >  >> RDS >> Oracle

Jaký je rozdíl mezi MOD a REMAINDER v oracle?

dokumentace je docela jasný rozdíl:

Jinými slovy, když jsou argumenty kladná celá čísla, funkce mod vrátí kladné číslo mezi 0 a druhým argumentem. Funkce zbytek vrací číslo, jehož absolutní hodnota je menší než druhý argument děleno 2.

Rozdíly mohou být markantnější u záporných čísel. Jedním příkladem rozdílu je:

REMAINDER(-15, 4)
MOD(-15, 4)

První dává -3 a druhý 1 .

EDIT:

Co se tady děje? Kolikrát přejde 4 do -15. Jedna metoda je "-4" krát se zbytkem 1. To znamená:-15 =4*(-4) + 1. Druhá je "-3" krát:-15 =4*(-3) - 3.

Rozdíl, který je -15/4 vyjádřený jako celé číslo. Při použití podlahy získáte -4 . Pomocí round získáte -3 .



  1. Jak vytvořit dynamický pivot s datem a dalším sloupcem v oracle?

  2. Předávání nulového/prázdného řetězce do uložené procedury Oracle z asp.net

  3. Jak mohu ovládat sniffování parametrů a/nebo tipy pro dotazy v rámci entity?

  4. PostgreSQL chybný převod z časového razítka bez časového pásma na časové razítko s časovým pásmem