MySQL-এ কোনো নির্দিষ্ট মান (যেমন 'Not Known') সর্ট রেজাল্টের সবশেষে পাঠাতে ORDER BY এ বুলিয়ান এক্সপ্রেশন ব্যবহার করা হয়।
উদাহরণ
টেবিল তৈরি:
CREATE TABLE demo57 (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
full_name VARCHAR(20)
);
INSERT INTO demo57(full_name) VALUES ('John Smith'), ('David Miller'), ('Not Known'), ('Chris Brown');
টেবিলের ডেটা:
+----+--------------+ | id | full_name | +----+--------------+ | 1 | John Smith | | 2 | David Miller | | 3 | Not Known | | 4 | Chris Brown | +----+--------------+
কোয়েরি
'Not Known' মানটিকে শেষে রাখতে:
SELECT * FROM demo57 ORDER BY (full_name = 'Not Known'), full_name DESC;
আউটপুট
+----+--------------+ | id | full_name | +----+--------------+ | 1 | John Smith | | 2 | David Miller | | 4 | Chris Brown | | 3 | Not Known | +----+--------------+
ব্যাখ্যা:
(full_name = 'Not Known')একটি বুলিয়ান এক্সপ্রেশন। MySQL-এ TRUE = 1, FALSE = 0।- সাধারণ রোগুলোতে FALSE (0), 'Not Known' রোতে TRUE (1)।
ORDER BY ..., full_name DESC-> প্রথমে বুলিয়ান মান অনুযায়ী (০ আগে, ১ পরে), তারপর নাম ডিসেন্ডিং।- এভাবেই
ORDER BY (col = 'value') DESCদিয়ে সেই মানকে প্রথমেও আনতে পারবেন।
বিকল্প: ORDER BY CASE WHEN full_name = 'Not Known' THEN 1 ELSE 0 END, full_name DESC।