Operator SAP HANA boleh digunakan untuk pengiraan, perbandingan nilai atau untuk memberikan nilai. SAP HANA Mengandungi pengendali di bawah-
Pengendali Tidak Berguna dan Perduaan
Pengendali Aritmetik
Pengendali String
Pengendali Perbandingan
Pengendali Logik
Tetapkan Pengendali
Pengendali Tidak Berguna dan Perduaan
Pengendali | Operasi | Penerangan |
---|---|---|
Tidak sedar | Pengendali Unary berlaku untuk satu operasi | Operator unary plus (+) Operator negasi unary (-) Negasi logik (BUKAN) |
Perduaan | Pengendali Binari berlaku pada dua operasi | Pengendali berbilang (*, /) Pengendali aditif (+, -) Pengendali perbandingan (=,! =, <,>, <=,> =) Pengendali logik (DAN, ATAU) |
Pengendali Aritmetik
- Penambahan (+)
- Penolakan (-)
- Pendaraban (*)
- Bahagian (/)
Operator String
Operator String adalah pengendali gabungan yang menggabungkan dua item seperti rentetan, ungkapan atau pemalar menjadi satu.
Dua Bar menegak "||" digunakan sebagai pengendali gabungan.
Pengendali Perbandingan
Pengendali perbandingan digunakan untuk membandingkan dua operasi. Berikut adalah senarai Operator Perbandingan-
- Sama dengan (=)
- Lebih Besar Dari (>)
- Kurang daripada (<)
- Lebih besar daripada atau sama dengan (> =)
- Kurang daripada atau sama dengan (<=)
- Tidak Sama (! =, <>)
Pengendali Logik
Operator logik digunakan dalam kriteria carian.
Cth MANA syarat1 DAN / ATAU / TIDAK syarat2
Berikut adalah senarai pengendali logik -
- DAN - (mis. DI MANA syarat1 DAN syarat2)
Sekiranya kedua-dua Syarat1 DAN Syarat2 adalah benar, maka Gabungan syarat itu benar, ia akan menjadi salah.
- ATAU - (mis. DI MANA syarat1 ATAU syarat2)
Sekiranya Syarat1 ATAU Syarat2 adalah benar, maka gabungkan syarat itu benar atau salah jika kedua-dua Syarat itu salah.
- TIDAK - (mis. TIDAK ada keadaan)
TIDAK syarat adalah benar Sekiranya Syarat itu salah.
Tetapkan Pengendali
- UNION - Menggabungkan dua atau banyak pernyataan atau pertanyaan terpilih tanpa pendua.
- UNION ALL - Menggabungkan dua atau banyak pernyataan atau pertanyaan terpilih, termasuk semua baris pendua.
- INTERSECT - Menggabungkan dua atau banyak pernyataan atau pertanyaan terpilih, dan mengembalikan semua baris biasa.
- KECUALI - Mengambil output dari pertanyaan pertama dan membuang baris yang dipilih oleh pertanyaan kedua.
Cth
Saya mempunyai dua jadual (table1, table2) di mana beberapa nilai adalah umum.
Kami menggunakan Set operator (Union, Union ALL, Intersect, kecuali) untuk dua jadual ini di SQL seperti di bawah -
Buat Jadual1- Skrip SQL
CREATE COLUMN TABLE DHK_SCHEMA.TABLE1( ELEMENT CHAR(1),PRIMARY KEY (ELEMENT));INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('P');INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('Q');INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('R');INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('S');INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('T');
Buat Jadual2- Skrip SQL
CREATE COLUMN TABLE DHK_SCHEMA.TABLE2( ELEMENT CHAR(1),PRIMARY KEY (ELEMENT));INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('S');INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('T');INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('U');INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('V');INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('W');
Catatan : Di sini "DHK_SCHEMA" adalah nama skema, pengguna dapat mengubah nama skema dalam SQL dengan sewajarnya.
Tetapkan Contoh Operator seperti di bawah -
Pengendali | Pertanyaan SQL | Pengeluaran | Kegunaan |
---|---|---|---|
KESATUAN | PILIH * DARI (PILIH ELEMEN DARI DHK_SCHEMA.TABLE1 UNION PILIH ELEMEN DARI DHK_SCHEMA.TABLE2 ) PESANAN OLEH ELEMENT; |
| Gabungkan Keputusan dua atau lebih pertanyaan tanpa pendua. |
UNION SEMUA | PILIH * DARI ( PILIH ELEMEN DARI DHK_SCHEMA.TABLE1 UNION SEMUA ELEMEN PILIH DARI DHK_SCHEMA.TABLE2) PESANAN OLEH ELEMENT; |
| Gabungkan Hasil dua atau lebih pertanyaan dengan semua pendua. |
MENARIK | SELECT * FROM ( PILIH ELEMEN DARI DHK_SCHEMA.TABLE1 ELEMEN PILIH INTERSECT DARI DHK_SCHEMA.TABLE2) ORDER MENGIKUT ELEMENT; |
| Gabungkan Hasil dua atau lebih pertanyaan dengan semua baris biasa. |
KECUALI | PILIH * DARI ( PILIH ELEMEN DARI DHK_SCHEMA.TABLE1 KECUALI PILIH ELEMEN DARI DHK_SCHEMA.TABLE2) PESANAN OLEH ELEMENT; |
| Mengambil output dari pertanyaan pertama dan membuang baris yang dipilih oleh pertanyaan kedua |