MySQL-এ AND এবং &&: শুধু সিনট্যাক্সের পার্থক্য, ফাংশনালিটি একই
MySQL-এ AND হলো SQL স্ট্যান্ডার্ড লজিক্যাল অপারেটর, আর && হলো MySQL-স্পেসিফিক (মালিকানা/Proprietary) সিনট্যাক্স। ফাংশনালিটি সম্পূর্ণ একই — দুটোই লজিক্যাল AND অপারেশন করে।
সত্য টেবিল (Truth Table)
| Operand 1 | Operand 2 | AND / && ফলাফল |
|---|---|---|
| 1 (TRUE) | 1 (TRUE) | 1 |
| 1 (TRUE) | 0 (FALSE) | 0 |
| 0 (FALSE) | 1 (TRUE) | 0 |
| 0 (FALSE) | 0 (FALSE) | 0 |
| NULL | 1 | NULL |
| NULL | 0 | 0 |
| NULL | NULL | NULL |
নোট: MySQL-এ নন-জিরো মান (বolgensিও) TRUE হিসেবে বিবেচিত হয়। -10 AND -30 = 1।
উদাহরণ
দুইটি ১ (TRUE)
mysql> SELECT 1 AND 1 AS Result; -- 1 mysql> SELECT 1 && 1 AS Result; -- 1
একটি ০ (FALSE)
mysql> SELECT 1 AND 0 AS Result; -- 0 mysql> SELECT 1 && 0 AS Result; -- 0
NULL হ্যান্ডলিং
mysql> SELECT NULL AND 1 AS Result; -- NULL mysql> SELECT NULL && 1 AS Result; -- NULL
নেগেটিভ নম্বর (TRUE)
mysql> SELECT -10 AND -30 AS Result; -- 1 mysql> SELECT -10 && -30 AS Result; -- 1
নেগেটিভ এবং ০
mysql> SELECT -10 AND 0 AS Result; -- 0 mysql> SELECT 10 && 0 AS Result; -- 0
সুপারিশ: পোর্টেবিলিটির জন্য সবসময় AND ব্যবহার করুন। && শুধু MySQL-এ কাজ করে, অন্য ডেটাবেসে (PostgreSQL, SQL Server, Oracle) সিনট্যাক্স এরর দেবে।