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

MySQL에서 타임스탬프와 ENUM으로 동시에 정렬하는 방법

타임스탬프(DATE 타입)와 ENUM 타입 컬럼을 함께 정렬하려면 ORDER BY 절에서 각각의 컬럼을 지정하면 됩니다. 예제를 통해 알아보겠습니다.

테이블 생성 및 데이터 삽입

mysql> CREATE TABLE DemoTable (
    -> JoiningDate DATE,
    -> Status ENUM('Good','Excellent','Bad')
    -> );
Query OK, 0 rows affected (0.58 sec)
mysql> INSERT INTO DemoTable VALUES('2019-01-21','Excellent');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable(Status) VALUES('Bad');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable(Status) VALUES('Good');
Query OK, 1 row affected (0.13 sec)

데이터 조회

mysql> SELECT * FROM DemoTable;
+-------------+-----------+
| JoiningDate | Status    |
+-------------+-----------+
| 2019-01-21  | Excellent |
| NULL        | Bad       |
| NULL        | Good      |
+-------------+-----------+
3 rows in set (0.00 sec)

타임스탬프와 ENUM으로 정렬

mysql> SELECT * FROM DemoTable
    -> ORDER BY DATE(JoiningDate) ASC, Status ASC;
+-------------+-----------+
| JoiningDate | Status    |
+-------------+-----------+
| NULL        | Good      |
| NULL        | Bad       |
| 2019-01-21  | Excellent |
+-------------+-----------+
3 rows in set (0.00 sec)

핵심 포인트: DATE() 함수는 DATE 타입 컬럼에서 날짜 부분만 추출하며, NULL 값은 정렬 시 가장 먼저 또는 마지막으로 옵니다(기본적으로 ASC에서 먼저). ENUM 값은 정의된 순서('Good', 'Excellent', 'Bad')대로 정렬됩니다.

  1. MySQL-এ GROUP BY ও ORDER BY ব্যবহার করে একই কোয়েরিতে গুনুন ও সর্ট করা

  2. MySQL কোয়েরি: AND OR ব্যবহার করে নির্বাচন করা

  3. MySQL-এ টাইমস্ট্যাম্পকে মাসে কনভার্ট করা

  4. MySQL-এ GROUP BY ও ORDER BY ব্যবহার করে যোগফল বের করে সর্ট করা