Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में दिनांक और समय के अनुसार अवरोही क्रम में कैसे सॉर्ट करें?

ORDER BY में DATE और TIME कॉलम

MySQL में अलग-अलग DATE और TIME कॉलम को मिलाकर **अवरोही क्रम (descending)** में सॉर्ट करने के लिए ORDER BY में दोनों कॉलम निर्दिष्ट करें।

उदाहरण सेटअप

mysql> CREATE TABLE SortByDateAndTime (
    -> UserId INT,
    -> UserName VARCHAR(100),
    -> IssueDate DATE,
    -> IssueTime TIME
    -> );
Query OK, 0 rows affected (0.60 sec)

mysql> INSERT INTO SortByDateAndTime VALUES
    -> (1, 'John', '2018-12-16', '10:30'),
    -> (2, 'Bob', '2018-12-16', '10:10'),
    -> (3, 'Carol', '2018-12-16', '10:20'),
    -> (4, 'Sam', '2018-12-16', '10:00');

मूल डेटा

mysql> SELECT * FROM SortByDateAndTime;
+--------+----------+------------+-----------+
| UserId | UserName | IssueDate  | IssueTime |
+--------+----------+------------+-----------+
| 1      | John     | 2018-12-16 | 10:30:00  |
| 2      | Bob      | 2018-12-16 | 10:10:00  |
| 3      | Carol    | 2018-12-16 | 10:20:00  |
| 4      | Sam      | 2018-12-16 | 10:00:00  |
+--------+----------+------------+-----------+
4 rows in set (0.00 sec)

केस 1: दिनांक DESC, समय DESC (नवीनतम पहले)

mysql> SELECT UserId, UserName, DATE(IssueDate) AS date1, IssueTime 
    -> FROM SortByDateAndTime 
    -> ORDER BY DATE(IssueDate) DESC, IssueTime DESC;
+--------+----------+------------+-----------+
| UserId | UserName | date1      | IssueTime |
+--------+----------+------------+-----------+
| 1      | John     | 2018-12-16 | 10:30:00  |
| 3      | Carol    | 2018-12-16 | 10:20:00  |
| 2      | Bob      | 2018-12-16 | 10:10:00  |
| 4      | Sam      | 2018-12-16 | 10:00:00  |
+--------+----------+------------+-----------+
4 rows in set (0.00 sec)

केस 2: दिनांक DESC, समय ASC (पुराना समय पहले)

mysql> SELECT UserId, UserName, DATE(IssueDate) AS date1, IssueTime 
    -> FROM SortByDateAndTime 
    -> ORDER BY DATE(IssueDate) DESC, IssueTime ASC;
+--------+----------+------------+-----------+
| UserId | UserName | date1      | IssueTime |
+--------+----------+------------+-----------+
| 4      | Sam      | 2018-12-16 | 10:00:00  |
| 2      | Bob      | 2018-12-16 | 10:10:00  |
| 3      | Carol    | 2018-12-16 | 10:20:00  |
| 1      | John     | 2018-12-16 | 10:30:00  |
+--------+----------+------------+-----------+
4 rows in set (0.00 sec)

सिंगल DATETIME कॉलम के लिए

यदि एक DATETIME कॉलम है:

SELECT * FROM Events ORDER BY EventDateTime DESC;

महत्वपूर्ण: DATE() फ़ंक्शन इंडेक्स को प्रभावित कर सकता है

कॉलम पर फ़ंक्शन (DATE(col)) लगाने से इंडेक्स उपयोग रुक सकता है। बेहतर:

-- यदि IssueDate DATE प्रकार है:
ORDER BY IssueDate DESC, IssueTime DESC

-- यदि DATETIME है:
ORDER BY EventDateTime DESC

मिश्रित ASC/DESC पैटर्न

-- नवीनतम दिनांक, लेकिन प्रत्येक दिन का सबसे पहला समय
ORDER BY IssueDate DESC, IssueTime ASC

-- सबसे पुराना दिनांक, लेकिन प्रत्येक दिन का नवीनतम समय
ORDER BY IssueDate ASC, IssueTime DESC
  1. - MySQL में GROUP_CONCAT ORDER BY से समुच्चय फ़ंक्शन को क्रमबद्ध करें

    MySQL में GROUP_CONCAT() के अंदर ORDER BY क्लॉज का उपयोग करके जोड़े गए मानों का क्रम नियंत्रित कर सकते हैं। सिंटैक्स GROUP_CONCAT(कॉलम_नाम ORDER BY क्रम_कॉलम [ASC|DESC] SEPARATOR अलग_करने_वाला) उदाहरण: StudentId क्रम में नाम जोड़ें 1. टेबल बनाएं ); 2. डेटा डालें (समान अंक, अलग ID) INSERT INTO

  1. - अवरोही क्रम में ऐरे को सॉर्ट करने का C प्रोग्राम

    समस्या लिखे गए कोड के आधार पर दिए गए ऐरे को अवरोही या आरोही क्रम में सॉर्ट करें। समाधान एक ऐरे संबंधित डेटा आइटम्स का एक समूह है जो एक सामान्य नाम साझा करते हैं। ऐरे में एक विशेष मान को उसके इंडेक्स नंबर की सहायता से पहचाना जाता है। ऐरे घोषित करना ऐरे घोषित करने का सिंटैक्स निम्नलिखित है: डेटाटाइप

  1. - C# में सूची तत्वों को अवरोही क्रम में क्रमबद्ध करना

    तत्वों के साथ हमारी सूची निम्न है: IList<Employee> emp = new List<Employee>() { new Employee() { EmployeeRank = 4, EmpName = Amit, EmpMarks = 90 }, new Employee() { EmployeeRank = 05, EmpName = Raman, EmpMarks = 95 } }; अब तत्वों को अवरोही क्रम में क्रमबद्ध करने के लिए orderby और