Dalam SQL, operator kurang dari atau sama dengan (<=
) membandingkan dua ekspresi dan mengembalikan TRUE
jika operan kiri memiliki nilai lebih rendah dari atau sama dengan operan kanan; jika tidak, hasilnya adalah FALSE
.
Anda dapat menggunakannya untuk menentukan apakah suatu nilai lebih kecil atau sama dengan nilai lain.
Contoh
Berikut ini contoh untuk didemonstrasikan.
SELECT * FROM city
WHERE Population <= 455;
Hasil:
+------+--------------------+---------------+-------------+--------------+ | ID | Name | CountryCode | District | Population | |------+--------------------+---------------+-------------+--------------| | 2317 | West Island | CCK | West Island | 167 | | 2912 | Adamstown | PCN | – | 42 | | 3333 | Fakaofo | TKL | Fakaofo | 300 | | 3538 | Città del Vaticano | VAT | – | 455 | +------+--------------------+---------------+-------------+--------------+
Kueri ini menampilkan semua kota yang memiliki populasi 455 atau lebih rendah.
Inklusif
Operator kurang dari atau sama dengan memasukkan nilai yang ditentukan dalam evaluasinya. Kami melihat ini pada contoh sebelumnya ketika menyertakan kota dengan populasi 455, yang merupakan nilai persis yang kami tentukan.
Jika kami tidak ingin kota ini disertakan, kami perlu menurunkan nilainya:
SELECT * FROM city
WHERE Population <= 454;
Hasil:
+------+-------------+---------------+-------------+--------------+ | ID | Name | CountryCode | District | Population | |------+-------------+---------------+-------------+--------------| | 2317 | West Island | CCK | West Island | 167 | | 2912 | Adamstown | PCN | – | 42 | | 3333 | Fakaofo | TKL | Fakaofo | 300 | +------+-------------+---------------+-------------+--------------+
Atau kita bisa menggunakan operator less than (<
) sebagai gantinya:
SELECT * FROM city
WHERE Population < 455;
Hasil:
+------+-------------+---------------+-------------+--------------+ | ID | Name | CountryCode | District | Population | |------+-------------+---------------+-------------+--------------| | 2317 | West Island | CCK | West Island | 167 | | 2912 | Adamstown | PCN | – | 42 | | 3333 | Fakaofo | TKL | Fakaofo | 300 | +------+-------------+---------------+-------------+--------------+
Operator kurang dari tidak menyertakan nilai yang Anda tentukan.
Tanggal
Berikut adalah contoh untuk mendemonstrasikan penggunaan operator kurang dari atau sama dengan untuk membandingkan nilai tanggal.
SELECT PetName, DOB
FROM Pets
WHERE DOB <= '2020-03-15';
Hasil:
+-----------+------------+ | PetName | DOB | |-----------+------------| | Fetch | 2019-08-16 | | Scratch | 2018-10-01 | | Wag | 2020-03-15 | +-----------+------------+
String
Anda juga dapat menggunakan <=
operator untuk membandingkan nilai string. Saat membandingkan dengan nilai string, gunakan tanda kutip di sekitar literal string.
SELECT * FROM city
WHERE Name <= 'Ab';
Hasil:
+------+------------------------------+---------------+---------------------+--------------+ | ID | Name | CountryCode | District | Population | |------+------------------------------+---------------+---------------------+--------------| | 20 | ´s-Hertogenbosch | NLD | Noord-Brabant | 129170 | | 548 | Šumen | BGR | Varna | 94686 | | 670 | A Coruña (La Coruña) | ESP | Galicia | 243402 | | 698 | [San Cristóbal de] la Laguna | ESP | Canary Islands | 127945 | | 2450 | Šiauliai | LTU | Šiauliai | 146563 | | 3097 | Aachen | DEU | Nordrhein-Westfalen | 243825 | | 3318 | Aalborg | DNK | Nordjylland | 161161 | | 3479 | Šostka | UKR | Sumy | 90000 | | 3665 | Šahty | RUS | Rostov-na-Donu | 221800 | | 3736 | Štšolkovo | RUS | Moskova | 104900 | +------+------------------------------+---------------+---------------------+--------------+
Kueri ini mengembalikan semua kota yang kurang dari atau sama dengan Ab
. Pada dasarnya, ini mengembalikan semua kota yang dimulai dengan huruf lebih rendah dari Ab
atau tepatnya Ab
.
Beberapa Kondisi
Jika Anda memiliki beberapa ketentuan, Anda dapat menggunakan beberapa <=
operator.
Seperti ini:
SELECT * FROM city
WHERE Name <= 'Ab' AND Population <= 100000;
Hasil:
+------+--------+---------------+------------+--------------+ | ID | Name | CountryCode | District | Population | |------+--------+---------------+------------+--------------| | 548 | Šumen | BGR | Varna | 94686 | | 3479 | Šostka | UKR | Sumy | 90000 | +------+--------+---------------+------------+--------------+
Diutamakan
Anda juga dapat menggunakan kombinasi operator saat memfilter hasil.
Perhatikan bahwa SQL memiliki urutan prioritas yang ditetapkan untuk jenis operator yang berbeda. Misalnya, mengevaluasi operator kondisional apa pun sebelum operator logika apa pun, seperti AND
dan OR
. Selanjutnya, mengevaluasi AND
operator sebelum OR
operator.
Tanda kurung memiliki prioritas yang lebih tinggi daripada semua operator, sehingga Anda dapat menggunakan tanda kurung untuk menentukan urutan di mana setiap kondisi harus dievaluasi.
Perhatikan contoh berikut:
SELECT * FROM city
WHERE Name <= 'Ab'
AND Population <= 100000
OR District = 'Canary Islands';
Hasil:
+------+------------------------------+---------------+----------------+--------------+ | ID | Name | CountryCode | District | Population | |------+------------------------------+---------------+----------------+--------------| | 548 | Šumen | BGR | Varna | 94686 | | 660 | Las Palmas de Gran Canaria | ESP | Canary Islands | 354757 | | 672 | Santa Cruz de Tenerife | ESP | Canary Islands | 213050 | | 698 | [San Cristóbal de] la Laguna | ESP | Canary Islands | 127945 | | 3479 | Šostka | UKR | Sumy | 90000 | +------+------------------------------+---------------+----------------+--------------+
Dalam kueri ini, saya tidak memberikan tanda kurung, jadi AND
operator dievaluasi sebelum OR
operator.
Oleh karena itu kami mendapatkan baris yang memenuhi Name <= 'Ab' AND Population <= 100000
atau District = 'Canary Islands'
. Kami dapat mengetahui hanya dengan melihat ini bahwa semua kota dari Kepulauan Canary akan dikembalikan, ditambah kota mana pun yang memenuhi kriteria pertama.
Ini seperti melakukan hal berikut:
SELECT * FROM city
WHERE (Name <= 'Ab'
AND Population <= 100000)
OR District = 'Canary Islands';
Itu akan memberi kita hasil yang sama seperti kueri sebelumnya tanpa tanda kurung.
Tapi lihat apa yang terjadi ketika kita memindahkan tanda kurung ke OR
kondisi.
SELECT * FROM city
WHERE Name <= 'Ab'
AND (Population <= 100000
OR District = 'Canary Islands');
Hasil:
+------+------------------------------+---------------+----------------+--------------+ | ID | Name | CountryCode | District | Population | |------+------------------------------+---------------+----------------+--------------| | 548 | Šumen | BGR | Varna | 94686 | | 698 | [San Cristóbal de] la Laguna | ESP | Canary Islands | 127945 | | 3479 | Šostka | UKR | Sumy | 90000 | +------+------------------------------+---------------+----------------+--------------+
Kali ini kami hanya mendapatkan kota-kota yang memenuhi Population <= 100000 OR District = 'Canary Islands'
dan Name <= 'Ab'
.
Meniadakan Kondisi
Anda dapat menggunakan NOT
operator untuk meniadakan kondisi yang diberikan oleh <=
operator. Ini contohnya:
SELECT PetName, DOB
FROM Pets
WHERE NOT DOB <= '2019-12-31';
Hasil:
+-----------+------------+ | PetName | DOB | |-----------+------------| | Fluffy | 2020-11-20 | | Wag | 2020-03-15 | | Tweet | 2020-11-28 | | Fluffy | 2020-09-17 | +-----------+------------+