কম্পিউটার টিউটোরিয়াল

MySQL-এ LEFT() ও UPPER() ব্যবহার করে প্রথম ও শেষ নাম একই অক্ষর দিয়ে শুরু হয় কিনা চেক করা

প্রথম নাম ও শেষ নামের প্রথম অক্ষর একই কিনা চেক করতে LEFT() ফাংশন ব্যবহার করে প্রথম অক্ষর বের করে UPPER() দিয়ে কেস-ইনসেনসিটিভ তুলনা করা হয়।

টেবিল তৈরি ও ডেটা ইনসার্ট

mysql> CREATE TABLE DemoTable789 (FirstName VARCHAR(100), LastName VARCHAR(100));
Query OK, 0 rows affected (0.78 sec)
mysql> INSERT INTO DemoTable789 VALUES ('Adam', 'Smith');
Query OK, 1 row affected (0.12 sec)
mysql> INSERT INTO DemoTable789 VALUES ('Tom', 'Taylor');
Query OK, 1 row affected (0.23 sec)
mysql> INSERT INTO DemoTable789 VALUES ('Bob', 'Brown');
Query OK, 1 row affected (0.12 sec)
mysql> INSERT INTO DemoTable789 VALUES ('David', 'Miller');
Query OK, 1 row affected (0.22 sec)

সকল রেকর্ড

mysql> SELECT * FROM DemoTable789;

আউটপুট:

+-----------+----------+
| FirstName | LastName |
+-----------+----------+
| Adam      | Smith    |
| Tom       | Taylor   |
| Bob       | Brown    |
| David     | Miller   |
+-----------+----------+
4 rows in set (0.00 sec)

প্রথম অক্ষর মিলে যাওয়া রেকর্ড বের করা

mysql> SELECT * FROM DemoTable789 
WHERE UPPER(LEFT(FirstName, 1)) = UPPER(LEFT(LastName, 1));

ফলাফল (Tom-Taylor, Bob-Brown):

+-----------+----------+
| FirstName | LastName |
+-----------+----------+
| Tom       | Taylor   |
| Bob       | Brown    |
+-----------+----------+
2 rows in set (0.00 sec)

ব্যাখ্যা

  • LEFT(str, 1) - স্ট্রিংয়ের বাম পাশ থেকে ১ অক্ষর নেয়।
  • UPPER() - বড় হাতের অক্ষরে রূপান্তর করে (কেস-ইনসেনসিটিভ তুলনার জন্য)।
  • MySQL ডিফল্টভাবে কেস-ইনসেনসিটিভ (collation-এ নির্ভর), কিন্তু UPPER() ব্যবহার করা নিরাপদ।

বিকল্প: SUBSTRING()

WHERE UPPER(SUBSTRING(FirstName, 1, 1)) = UPPER(SUBSTRING(LastName, 1, 1))
  1. MySQL-এ একক ফিল্ড দ্বারা অর্ডার করে বাকি রেকর্ডগুলো একই ক্রমে দেখানো

  2. MySQL에서 날짜 레코드로부터 월의 첫날과 마지막 날 구하기

  3. MySQL에서 날짜 문자열을 요일 기준 월요일로 맞춰 표시하기 (STR_TO_DATE, WEEKDAY, DATE_FORMAT)

  4. MySQL-এ LEFT() ফাংশন ব্যবহার করে প্রথম অক্ষর বের করে অন্য কলামে রাখা