MySQL-এ AND এবং OR লজিক্যাল অপারেটরের কাজ করার পদ্ধতি ভিন্ন।
- AND: দুটি শর্তই সত্য হতে হবে (দুটো TRUE হলে TRUE)।
- OR: যেকোনো একটি শর্ত সত্য হলে চলবে (একটিই TRUE হলে TRUE)।
উদাহরণ
টেবিল তৈরি:
CREATE TABLE demo70 (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(20),
age INT
);
INSERT INTO demo70(name, age) VALUES
('John', 23), ('David', 21), ('Mike', 22), ('Chris', 20), ('John', 24), ('David', 22);
টেবিলের ডেটা:
+----+-------+------+ | id | name | age | +----+-------+------+ | 1 | John | 23 | | 2 | David | 21 | | 3 | Mike | 22 | | 4 | Chris | 20 | | 5 | John | 24 | | 6 | David | 22 | +----+-------+------+
OR অপারেটর
SELECT * FROM demo70 WHERE name = 'John' OR age = 22;
আউটপুট
+----+-------+------+ | id | name | age | +----+-------+------+ | 1 | John | 23 | | 3 | Mike | 22 | | 5 | John | 24 | | 6 | David | 22 | +----+-------+------+
ব্যাখ্যা: name='John' (রো ১,৫) OR age=22 (রো ৩,৬)। যেকোনো একটি সত্য হলে সিলেক্ট হয়েছে। মোট ৪ রো।
AND অপারেটর
SELECT * FROM demo70 WHERE name = 'John' AND age = 22;
আউটপুট
Empty set (0.00 sec)
ব্যাখ্যা: একই রোতে name='John' এবং age=22 উভয়ই থাকতে হবে। এখানে এমন কোনো রো নেই (John-এর age ২৩ ও ২৪)। তাই খালি সেট।
সারসংক্ষেপ
| অপারেটর | শর্ত | ফলাফল |
|---|---|---|
| AND | উভয় শর্ত TRUE | TRUE |
| AND | একটি FALSE | FALSE |
| OR | একটি TRUE | TRUE |
| OR | উভয় FALSE | FALSE |