sql >> Database teknologi >  >> RDS >> Database

Sådan beregnes en absolut værdi i SQL

Problem:

Du vil finde den absolutte værdi af et tal.

Eksempel:

Du vil beregne den absolutte værdi (også kaldet modul) af hvert tal i kolonnen numbers fra tabellen data .

numre
-3.2
0
20

Løsning:

SELECT
  ABS(numbers) AS absolute_values
FROM data;

Resultatet er:

absolute_værdier
3.2
0
20

Diskussion:

For at beregne den absolutte værdi af et tal, brug ABS() fungere. Denne funktion tager et tal som et argument og returnerer dets værdi uden minustegnet, hvis der er et. Den returnerede værdi vil altid være ikke-negativ – nul for argument 0, positivt for ethvert andet argument. Bemærk, at den returnerede værdi kun vil afvige fra argumentet, hvis argumentet er negativt.

Hvis du af en eller anden grund kun skal konvertere de positive værdier til deres negative ækvivalent og lade de andre (dvs. nul og negative) værdier være urørte, kan du bruge et minustegn før ABS() funktion.

SELECT
  -ABS(numbers) AS non_positive
FROM data;

Resultatet bliver:

non_positive
-3.2
0
-20

  1. Sender bruger-id til PostgreSQL-udløsere

  2. Undgå talkonflikter med Microsoft SQL-sekvenser

  3. Sådan flyttes fil fra en mappe til en anden ved hjælp af PL SQL

  4. Hvorfor er 1899-12-30 nuldatoen i Access / SQL Server i stedet for 12/31?