যদি একই আইডির জন্য একাধিক সারি থাকে এবং আপনি চান শুধু প্রথম নন-নাল ও নন-এমপ্টি মেসেজটি বের করা, তবে MIN() ফাংশন এবং WHERE ক্লজ ব্যবহার করে করা যায়।
টেবিল তৈরি এবং ডেটা ইনসার্ট
mysql> CREATE TABLE DemoTable (
-> Id VARCHAR(100),
-> Message VARCHAR(200)
-> );
Query OK, 0 rows affected (1.17 sec)
mysql> INSERT INTO DemoTable VALUES('1', '');
mysql> INSERT INTO DemoTable VALUES('1', 'Hi');
mysql> INSERT INTO DemoTable VALUES('2', 'Hello');
mysql> INSERT INTO DemoTable VALUES('3', 'Awesome');
mysql> INSERT INTO DemoTable VALUES('3', 'Good Morning');
mysql> INSERT INTO DemoTable VALUES('2', NULL);
সকল রেকর্ড
+------+--------------+ | Id | Message | +------+--------------+ | 1 | | | 1 | Hi | | 2 | Hello | | 3 | Awesome | | 3 | Good Morning | | 2 | NULL | +------+--------------+
প্রথম নন-এমপ্টি মেসেজ বের করার কোয়েরি
mysql> SELECT Id, MIN(Message) FROM DemoTable
-> WHERE Message IS NOT NULL AND LENGTH(Message) > 0
-> GROUP BY Id;
আউটপুট:
+------+--------------+ | Id | MIN(Message) | +------+--------------+ | 1 | Hi | | 2 | Hello | | 3 | Awesome | +------+--------------+
ব্যাখ্যা: WHERE ক্লজে NULL এবং খালি স্ট্রিং ফিল্টার আউট করা হয়েছে। MIN() অ্যালফাবেটিক্যালি প্রথম মান বের করে (এখানে 'Awesome' < 'Good Morning')।