Database
 sql >> डेटाबेस >  >> RDS >> Database

एसक्यूएल में तारीख की तुलना कैसे करें

इस खंड में, हम सीखेंगे कि SQL में तिथियों की तुलना कैसे की जा सकती है।

  • हम किसी भी यादृच्छिक तिथि की तुलना किसी तालिका के कॉलम में संग्रहीत किसी अन्य तिथि से कर सकते हैं।
  • यह तुलना तुलना ऑपरेटरों की सहायता से की जा सकती है ऐसे >, <,>=,>=, =.
  • तारीख () फ़ंक्शन का उपयोग SQL में दो भिन्न तिथियों की तुलना करने के लिए भी किया जाता है।
  • डेटा प्रकार DATE SQL तालिकाओं में दिनांकों को 'YYYY-MM-DD' प्रारूप में संग्रहीत करने की अनुमति देता है। लेकिन तारीखों की तुलना करने के लिए क्वेरी लिखते समय, क्वेरी में लिखी जाने वाली तारीख आराम से स्ट्रिंग प्रारूप में हो सकती है।
  • आराम से स्ट्रिंग प्रारूप के अनुसार, तिथि के विभिन्न भागों को बीच में किसी भी वर्ण का उपयोग करके अलग किया जा सकता है। MySQL बिना किसी विभाजक के एक क्वेरी में एक तारीख को लिखने की अनुमति देता है, बशर्ते कि तारीख के रूप में लिखी गई स्ट्रिंग एक समझदार तारीख हो।

उदाहरण 1:

उन सभी कर्मचारियों को खोजने के लिए एक प्रश्न लिखें जिनकी कार्यग्रहण तिथि 5 मई 1999 से अधिक या समान है।

dbemployee . नाम से एक डेटाबेस बनाएं "इसमें एक टेबल 'कर्मचारी' बनाई गई है। हम निम्नलिखित सभी उदाहरणों के लिए इस तालिका और डेटाबेस पर विचार करेंगे।

mysql> CREATE DATABASE dbemployee;
Query OK, 1 row affected (0.00 sec)
mysql> USE dbemployee;
Database changed
mysql> CREATE TABLE employee (Emp_Id INT NOT NULL, Emp_Name VARCHAR (20), Emp_Dept VARCHAR (20), Emp_Salary INT, Emp_Joining_Date DATE);
Query OK, 0 rows affected (0.09 sec)

हमने 'dbemployee' नाम से एक नया डेटाबेस बनाया है, और 'USE dbemployee' कमांड के साथ, हमने इस डेटाबेस को चुना है। फिर, 'तालिका बनाएं' कमांड के साथ, हमने 'dbemployee' डेटाबेस में एक टेबल 'कर्मचारी' बनाया है।

अब, हम ऊपर बनाई गई तालिका में डेटा सम्मिलित करेंगे।

mysql> INSERT INTO employee VALUES (1, "Sana Khan", "HRM", 45000, "1999-06-17");
Query OK, 1 row affected (0.05 sec)
mysql> INSERT INTO employee VALUES (2, "Anupama Deshmukh", "Finance", 32000, CURDATE ());
Query OK, 1 row affected (0.11 sec)


mysql> INSERT INTO employee VALUES (3, "Kajal Shah", "Purchasing", 71000, "2020-12-12");
Query OK, 1 row affected (0.09 sec)


mysql> INSERT INTO employee VALUES (4, "Mayuri Koli", "Accounts", 64000, "1987-08-18");
Query OK, 1 row affected (0.09 sec)


mysql> INSERT INTO employee VALUES (5, "Surili Maheshwari", "Production", 30000, "1970-10-10");
Query OK, 1 row affected (0.09 sec)

तालिका में सफलतापूर्वक डेटा डालने के बाद, अब हम तालिका के सभी रिकॉर्ड प्राप्त करेंगे।

mysql> SELECT *FROM employee;
+--------+-------------------+------------+------------+------------------+
| Emp_Id | Emp_Name          | Emp_Dept   | Emp_Salary | Emp_Joining_Date |
+--------+-------------------+------------+------------+------------------+
|      1 | Sana Khan         | HRM        |      45000 | 1999-06-17       |
|      2 | Anupama Deshmukh  | Finance    |      32000 | 2021-06-26       |
|      3 | Kajal Shah        | Purchasing |      71000 | 2020-12-12       |
|      4 | Mayuri Koli       | Accounts   |      64000 | 1987-08-18       |
|      5 | Surili Maheshwari | Production |      30000 | 1970-10-10       |
+--------+-------------------+------------+------------+------------------+
5 rows in set (0.00 sec)

अब, दिए गए समस्या विवरण के लिए एक प्रश्न लिखते हैं।

mysql> SELECT *FROM employee WHERE Emp_Joining_Date >= '1999-05-05';

आउटपुट:

+--------+------------------+------------+------------+------------------+
| Emp_Id | Emp_Name         | Emp_Dept   | Emp_Salary | Emp_Joining_Date |
+--------+------------------+------------+------------+------------------+
|      1 | Sana Khan        | HRM        |      45000 | 1999-06-17       |
|      2 | Anupama Deshmukh | Finance    |      32000 | 2021-06-26       |
|      3 | Kajal Shah       | Purchasing |      71000 | 2020-12-12       |
+--------+------------------+------------+------------+------------------+
3 rows in set (0.00 sec)

कर्मचारी आईडी 1, 2 और 3 वाले तीन कर्मचारी हैं जिनकी कार्यग्रहण तिथि 5 मई 1999 से अधिक है।

उदाहरण 2:

उन सभी कर्मचारियों को खोजने के लिए एक प्रश्न लिखें जिनकी कार्यग्रहण तिथि 5 मई 1999 से कम या समान है।

mysql> SELECT *FROM employee WHERE Emp_Joining_Date <= '19990505';

आउटपुट:

+--------+-------------------+------------+------------+------------------+
| Emp_Id | Emp_Name          | Emp_Dept   | Emp_Salary | Emp_Joining_Date |
+--------+-------------------+------------+------------+------------------+
|      4 | Mayuri Koli       | Accounts   |      64000 | 1987-08-18       |
|      5 | Surili Maheshwari | Production |      30000 | 1970-10-10       |
+--------+-------------------+------------+------------+------------------+
2 rows in set (0.00 sec)

कर्मचारी आईडी 4 और 5 वाले दो कर्मचारी जिनकी कार्यग्रहण तिथि 5 मई 1999 से कम है।

उदाहरण 3:

उन सभी कर्मचारियों को खोजने के लिए एक प्रश्न लिखें जिनकी कार्यभार ग्रहण करने की तिथि 8 अगस्त 1987 के समान है।

mysql> SELECT *FROM employee WHERE Emp_Joining_Date = 19870818;

आउटपुट:

+--------+-------------+----------+------------+------------------+
| Emp_Id | Emp_Name    | Emp_Dept | Emp_Salary | Emp_Joining_Date |
+--------+-------------+----------+------------+------------------+
|      4 | Mayuri Koli | Accounts |      64000 | 1987-08-18       |
+--------+-------------+----------+------------+------------------+
1 row in set (0.00 sec)

कर्मचारी आईडी 4 वाला केवल एक कर्मचारी है जिसकी कार्यग्रहण तिथि 18 अगस्त 1987 के बराबर है।

तिथि का उपयोग करना()

उदाहरण 4:

उन सभी कर्मचारियों को खोजने के लिए दिनांक () फ़ंक्शन का उपयोग करके एक प्रश्न लिखें, जिनकी कार्यग्रहण तिथि 26 जून 2021 के समान है।

mysql> SELECT *FROM employee WHERE date (Emp_Joining_Date) = '2021-06-26';

आउटपुट:

+--------+------------------+----------+------------+------------------+
| Emp_Id | Emp_Name         | Emp_Dept | Emp_Salary | Emp_Joining_Date |
+--------+------------------+----------+------------+------------------+
|      2 | Anupama Deshmukh | Finance  |      32000 | 2021-06-26       |
+--------+------------------+----------+------------+------------------+
1 row in set (0.00 sec)

कर्मचारी आईडी 2 वाला केवल एक कर्मचारी है जिसकी कार्यग्रहण तिथि 26 जून 2021 के बराबर है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SalesForce को पिरामिड में डेटा स्रोत के रूप में कैसे कनेक्ट करें

  2. MMO खेल और डेटाबेस डिजाइन

  3. सांख्यिकी के लिए अद्यतन

  4. डेल बूमिक

  5. इंडेक्स ट्यूनिंग के लिए एक दृष्टिकोण - भाग 1