Dalam SQL, operator yang lebih besar dari atau sama dengan (>=
) membandingkan dua ekspresi dan mengembalikan TRUE
jika operan kiri memiliki nilai lebih besar atau sama dengan operan kanan; jika tidak, ia mengembalikan FALSE
.
Contoh
Berikut ini contoh untuk didemonstrasikan.
SELECT * FROM city
WHERE Population >= 9269265
ORDER BY Population ASC;
Hasil:
+------+-----------------+---------------+--------------+--------------+ | ID | Name | CountryCode | District | Population | |------+-----------------+---------------+--------------+--------------| | 2822 | Karachi | PAK | Sindh | 9269265 | | 939 | Jakarta | IDN | Jakarta Raya | 9604900 | | 1890 | Shanghai | CHN | Shanghai | 9696300 | | 206 | São Paulo | BRA | São Paulo | 9968485 | | 2331 | Seoul | KOR | Seoul | 9981619 | | 1024 | Mumbai (Bombay) | IND | Maharashtra | 10500000 | +------+-----------------+---------------+--------------+--------------+
Kueri ini mengembalikan semua kota yang memiliki populasi lebih dari atau sama dengan 9269265.
Inklusif
Operator yang lebih besar dari atau sama dengan memasukkan nilai yang ditentukan dalam evaluasinya.
Misalnya, kueri sebelumnya menyertakan Karachi, yang menurut database ini memiliki populasi persis 9269265.
Jika kita ingin mengecualikan kota dengan populasi itu, kita perlu meningkatkan nilai yang ditentukan:
SELECT * FROM city
WHERE Population >= 9269266
ORDER BY Population ASC;
Hasil:
+------+-----------------+---------------+--------------+--------------+ | ID | Name | CountryCode | District | Population | |------+-----------------+---------------+--------------+--------------| | 939 | Jakarta | IDN | Jakarta Raya | 9604900 | | 1890 | Shanghai | CHN | Shanghai | 9696300 | | 206 | São Paulo | BRA | São Paulo | 9968485 | | 2331 | Seoul | KOR | Seoul | 9981619 | | 1024 | Mumbai (Bombay) | IND | Maharashtra | 10500000 | +------+-----------------+---------------+--------------+--------------+
Atau kita bisa menggunakan lebih besar dari (>
) sebagai gantinya:
SELECT * FROM city
WHERE Population > 9269265
ORDER BY Population ASC;
Hasil:
+------+-----------------+---------------+--------------+--------------+ | ID | Name | CountryCode | District | Population | |------+-----------------+---------------+--------------+--------------| | 939 | Jakarta | IDN | Jakarta Raya | 9604900 | | 1890 | Shanghai | CHN | Shanghai | 9696300 | | 206 | São Paulo | BRA | São Paulo | 9968485 | | 2331 | Seoul | KOR | Seoul | 9981619 | | 1024 | Mumbai (Bombay) | IND | Maharashtra | 10500000 | +------+-----------------+---------------+--------------+--------------+
Tanggal
Berikut adalah contoh untuk mendemonstrasikan penggunaan operator yang lebih besar atau sama dengan untuk membandingkan nilai tanggal.
SELECT PetName, DOB
FROM Pets
WHERE DOB >= '2020-03-15';
Hasil:
+-----------+------------+ | PetName | DOB | |-----------+------------| | Fluffy | 2020-11-20 | | Wag | 2020-03-15 | | Tweet | 2020-11-28 | | Fluffy | 2020-09-17 | +-----------+------------+
String
Anda juga dapat menggunakan operator yang lebih besar dari atau sama dengan untuk membandingkan nilai string. Saat membandingkan dengan nilai string, gunakan tanda kutip di sekitar string.
SELECT * FROM city
WHERE Name >= 'Zukovski'
ORDER BY Name;
Hasil:
+------+----------+---------------+------------+--------------+ | ID | Name | CountryCode | District | Population | |------+----------+---------------+------------+--------------| | 3756 | Zukovski | RUS | Moskova | 96500 | | 2669 | Zumpango | MEX | México | 99781 | | 2025 | Zunyi | CHN | Guizhou | 261862 | | 3245 | Zürich | CHE | Zürich | 336800 | | 3145 | Zwickau | DEU | Saksi | 104146 | | 28 | Zwolle | NLD | Overijssel | 105819 | | 3446 | Zytomyr | UKR | Zytomyr | 297000 | +------+----------+---------------+------------+--------------+
Beberapa Kondisi
Jika Anda memiliki beberapa kondisi, Anda dapat menggunakan beberapa >=
operator.
Seperti ini:
SELECT * FROM city
WHERE Name >= 'Zukovski' AND Population >= 200000;
Hasil:
+------+---------+---------------+------------+--------------+ | ID | Name | CountryCode | District | Population | |------+---------+---------------+------------+--------------| | 2025 | Zunyi | CHN | Guizhou | 261862 | | 3245 | Zürich | CHE | Zürich | 336800 | | 3446 | Zytomyr | UKR | Zytomyr | 297000 | +------+---------+---------------+------------+--------------+
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
. Itu juga 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 >= 'Zukovski'
AND Population >= 100000
OR District = 'Overijssel';
Hasil:
+------+----------+---------------+------------+--------------+ | ID | Name | CountryCode | District | Population | |------+----------+---------------+------------+--------------| | 15 | Enschede | NLD | Overijssel | 149544 | | 28 | Zwolle | NLD | Overijssel | 105819 | | 2025 | Zunyi | CHN | Guizhou | 261862 | | 3145 | Zwickau | DEU | Saksi | 104146 | | 3245 | Zürich | CHE | Zürich | 336800 | | 3446 | Zytomyr | UKR | Zytomyr | 297000 | +------+----------+---------------+------------+--------------+
Dalam kueri ini, saya tidak memberikan tanda kurung, jadi AND
operator dievaluasi sebelum OR
operator.
Oleh karena itu kami mendapatkan baris yang memenuhi Name >= 'Zukovski' AND Population >= 100000
atau District = 'Overijssel'
. Kita bisa tahu hanya dengan melihat ini bahwa semua kota dari distrik Overijssel akan dikembalikan, ditambah kota yang memenuhi kriteria pertama.
Ini seperti melakukan hal berikut:
SELECT * FROM city
WHERE (Name >= 'Zukovski'
AND Population >= 100000)
OR District = 'Overijssel';
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 >= 'Zukovski'
AND (Population >= 100000
OR District = 'Overijssel');
Hasil:
+------+---------+---------------+------------+--------------+ | ID | Name | CountryCode | District | Population | |------+---------+---------------+------------+--------------| | 28 | Zwolle | NLD | Overijssel | 105819 | | 2025 | Zunyi | CHN | Guizhou | 261862 | | 3145 | Zwickau | DEU | Saksi | 104146 | | 3245 | Zürich | CHE | Zürich | 336800 | | 3446 | Zytomyr | UKR | Zytomyr | 297000 | +------+---------+---------------+------------+--------------+
Kali ini kami hanya mendapatkan kota-kota yang memenuhi Population >= 100000 OR District = 'Overijssel'
dan Name >= 'Overijssel'
.
Hal ini mengakibatkan hanya satu kota dari Overijssel yang dikembalikan, berlawanan dengan dua kota pada kueri sebelumnya.
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 | |-----------+------------| | Fetch | 2019-08-16 | | Scratch | 2018-10-01 | +-----------+------------+