MySQL-এ কোনো কলামের সর্বোচ্চ মান (MAX) থাকা রোয়ের অন্য কলামের মান বের করতে সাবকোয়েরি ব্যবহার করা হয়।
উদাহরণ
১. টেবিল তৈরি করুন
mysql> CREATE TABLE DemoTable (
-> ProductId INT,
-> ProductAmount INT
-> );
২. ডেটা ইনসার্ট করুন
mysql> INSERT INTO DemoTable VALUES(1001, 7895);
mysql> INSERT INTO DemoTable VALUES(1003, 8903);
mysql> INSERT INTO DemoTable VALUES(1010, 7690);
mysql> INSERT INTO DemoTable VALUES(2010, 8450);
৩. সব রেকর্ড দেখুন
mysql> SELECT * FROM DemoTable;
আউটপুট:
+-----------+---------------+
| ProductId | ProductAmount |
+-----------+---------------+
| 1001 | 7895 |
| 1003 | 8903 |
| 1010 | 7690 |
| 2010 | 8450 |
+-----------+---------------+
৪. সর্বোচ্চ ProductAmount এর ProductId খুঁজুন
mysql> SELECT * FROM DemoTable
-> WHERE ProductAmount = (SELECT MAX(ProductAmount) FROM DemoTable);
৫. ফলাফল
+-----------+---------------+
| ProductId | ProductAmount |
+-----------+---------------+
| 1003 | 8903 |
+-----------+---------------+
বিকল্প পদ্ধতি (LIMIT ব্যবহার):
SELECT * FROM DemoTable ORDER BY ProductAmount DESC LIMIT 1;
সাবকোয়েরির সুবিধা: একাধিক রো একই সর্বোচ্চ মান থাকলে সবগুলো দেখাবে। LIMIT 1 শুধু একটি দেখাবে। পারফরম্যান্সে LIMIT কয়েকবার ভালো হতে পারে।