sql >> Databasteknik >  >> RDS >> Oracle

Vad är skillnaden mellan MOD och REMAINDER i oracle?

dokumentationen är ganska tydlig på skillnaden:

Med andra ord, när argumenten är positiva heltal, returnerar mod-funktionen ett positivt tal mellan 0 och det andra argumentet. Resten-funktionen returnerar ett tal vars absoluta värde är mindre än det andra argumentet dividerat med 2.

Skillnaderna kan vara mer slående för negativa tal. Ett exempel på skillnad är:

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

Den första ger -3 och den andra 1 .

EDIT:

Vad är det som händer här? Hur många gånger går 4 till -15. En metod är "-4" gånger med en rest av 1. Det vill säga:-15 =4*(-4) + 1. Den andra är "-3" gånger:-15 =4*(-3) - 3.

Skillnaden vad som är -15/4 uttryckt som ett heltal. Genom att använda floor får du -4 . Genom att använda runda får du -3 .



  1. Kan jag konfigurera Aurora DB max identifierarlängd? Hur?

  2. hur man arbetar med rekursiv fråga i MySql?

  3. visa resultat från oracle 10g lagrad procedur

  4. Hur lägger man en sträng till ett kolumnvärde i MySQL?