MySQL-এ কোনো নম্বরিক কলাম সর্ট করলে ০ (শূন্য) স্বাভাবিকভাবেই প্রথমে আসে। ০ কে সর্বশেষে রাখতে `ORDER BY` এ বুলিয়ান এক্সপ্রেশন ব্যবহার করুন।
সিনট্যাক্স
SELECT * FROM yourTableName ORDER BY yourFieldName = 0, yourFieldName;
উদাহরণ
mysql> CREATE TABLE SortColumnZeroAtLastDemo (RankNumber INT); mysql> INSERT INTO SortColumnZeroAtLastDemo VALUES (100), (0), (0), (50), (10), (0), (40); mysql> SELECT * FROM SortColumnZeroAtLastDemo; +------------+ | RankNumber | +------------+ | 100 | | 0 | | 0 | | 50 | | 10 | | 0 | | 40 | +------------+ mysql> SELECT * FROM SortColumnZeroAtLastDemo ORDER BY RankNumber = 0, RankNumber; +------------+ | RankNumber | +------------+ | 10 | | 40 | | 50 | | 100 | | 0 | | 0 | | 0 | +------------+
ব্যাখ্যা: `RankNumber = 0` এক্সপ্রেশনটি ০ হলে `TRUE` (১) রিটার্ন করে, অন্য মান হলে `FALSE` (০)। `ORDER BY` প্রথমে ০ (FALSE) গুলো সর্ট করে, তারপর ১ (TRUE) গুলো। তাই নন-জিরো মান আগে আসে।