SIGN fungsi - Amazon Redshift

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

SIGN fungsi

SIGNFungsi mengembalikan tanda (positif atau negatif) dari suatu angka. Hasil dari SIGN fungsi ini adalah 1 jika argumennya positif, -1 jika argumennya negatif, atau 0 jika argumennya0.

Sintaks

SIGN(number)

Pendapat

jumlah

Angka atau ekspresi yang mengevaluasi angka. Itu bisa berupaDECIMAL,FLOAT8, atau SUPER tipe. Amazon Redshift dapat mengonversi tipe data lain sesuai aturan konversi implisit.

Jenis pengembalian

SIGNmengembalikan tipe data numerik yang sama dengan argumen masukan. Jika inputnyaDECIMAL, outputnya adalahDECIMAL(1,0).

Ketika input adalah SUPER tipe, output mempertahankan tipe dinamis yang sama dengan input sementara tipe statis tetap SUPER tipe. Ketika tipe dinamis SUPER bukan angka, Amazon Redshift mengembalikan angka. NULL

Contoh

Contoh berikut menunjukkan bahwa kolom d dalam tabel t2 memiliki DOUBLE PRECISION tipe karena inputnya DOUBLE PRECISION dan kolom n dalam tabel t2 memiliki NUMERIC(1,0) sebagai output sejak inputnya. NUMERIC

CREATE TABLE t1(d DOUBLE PRECISION, n NUMERIC(12, 2)); INSERT INTO t1 VALUES (4.25, 4.25), (-4.25, -4.25); CREATE TABLE t2 AS SELECT SIGN(d) AS d, SIGN(n) AS n FROM t1; SELECT table_name, column_name, data_type FROM SVV_REDSHIFT_COLUMNS WHERE table_name='t1' OR table_name='t2'; +------------+-------------+-----------------------+ | table_name | column_name | data_type | +------------+-------------+-----------------------+ | t1 | d | double precision | | t1 | n | numeric(12,2) | | t2 | d | double precision | | t2 | n | numeric(1,0) | | t1 | col1 | character varying(20) | +------------+-------------+-----------------------+

Contoh berikut menggunakan database TICKIT sampel. Untuk informasi selengkapnya, lihat Database sampel.

Untuk menentukan tanda komisi yang dibayarkan untuk transaksi tertentu dari SALES tabel, gunakan contoh berikut.

SELECT commission, SIGN(commission) FROM sales WHERE salesid=10000; +------------+------+ | commission | sign | +------------+------+ | 28.05 | 1 | +------------+------+