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

MySQL में टेबल एलियास (Alias) का उपयोग: SELECT * में एलियास नहीं, लेकिन कॉलम में हां

MySQL में टेबल एलियास: * के साथ उपयोग नहीं कर सकते, लेकिन कॉलम के लिए उपयोगी

नियम:

  • SELECT * के साथ एलियास नहीं उपयोग कर सकते
  • व्यक्तिगत कॉलम के लिए एलियास उपयोग करें: alias.column AS alias_name

सिंटैक्स:

SELECT alias.columnName1 AS aliasName1, alias.columnName2 AS aliasName2, ...
FROM yourTableName AS alias;

व्यावहारिक उदाहरण

1. टेबल बनाएं:

mysql> CREATE TABLE TableAliasDemo (Id INT, Name VARCHAR(100), Age INT); 
Query OK, 0 rows affected (0.46 sec)

2. डेटा डालें:

mysql> INSERT INTO TableAliasDemo VALUES(1,'John',23);
mysql> INSERT INTO TableAliasDemo VALUES(2,'Sam',24);
mysql> INSERT INTO TableAliasDemo VALUES(3,'David',26);
mysql> INSERT INTO TableAliasDemo VALUES(4,'Carol',20);

3. सभी रिकॉर्ड:

+------+-------+------+ 
| Id   | Name  | Age  | 
+------+-------+------+ 
| 1    | John  | 23   | 
| 2    | Sam   | 24   | 
3David26
4Carol20

4 rows in set (0.00 sec)

4. एलियास के साथ SELECT:

mysql> SELECT alias.Id AS aliasForIdColumn,
    -> alias.Name AS aliasForNameColumn,
    -> alias.Age AS aliasForAgeColumn
    -> FROM TableAliasDemo AS alias;
+------------------+--------------------+-------------------+ 
| aliasForIdColumn | aliasForNameColumn | aliasForAgeColumn | 
+------------------+--------------------+-------------------+ 
| 1                | John               | 23                | 
| 2                | Sam                | 24                | 
| 3                | David              | 26                | 
| 4                | Carol              | 20                | 
+------------------+--------------------+-------------------+ 
4 rows in set (0.00 sec)

एलियास के फायदे:

  • पठनीयता: छोटे नाम (उदाहरण: employees e, orders o)
  • अस्पष्टता हटाना: सेल्फ-जॉइन या बहु-टेबल क्वेरी में कॉलम नाम टकराव रोकता है
  • आवश्यक: सबक्वेरी/डेराइव्ड टेबल के लिए एलियास अनिवार्य

सेल्फ-जॉइन उदाहरण (एलियास आवश्यक):

SELECT e1.Name AS Employee, e2.Name AS Manager
FROM employees e1
JOIN employees e2 ON e1.manager_id = e2.id;

सबक्वेरी में एलियास (अनिवार्य):

SELECT * FROM (SELECT id, name FROM users) AS subq;

कॉलम एलियास (AS वैकल्पिक):

SELECT name AS n, age a FROM users;  -- AS वैकल्पिक
SELECT name n, age a FROM users;      -- समान

सर्वोत्तम अभ्यास:

  • सार्थक छोटे एलियास उपयोग करें (u के बजाय usr)
  • कॉलम एलियास के लिए AS लिखें (पठनीयता)
  • रिजर्व्ड वर्ड को बैकटिक में लपेटें: SELECT \`order\` AS ord FROM table
  1. - MySQL में MAX() और सबक्वेरी से दो कॉलम के योग का अधिकतम मान वाली पंक्ति चुनें

    दो कॉलम के योग का अधिकतम मान वाली पंक्ति ढूंढने के लिए सबक्वेरी में MAX(कॉलम1 + कॉलम2) का उपयोग करें। सिंटैक्स SELECT * FROM टेबल_नाम WHERE कॉलम1 + कॉलम2 = (SELECT MAX(कॉलम1 + कॉलम2) FROM टेबल_नाम); उदाहरण 1. टेबल बनाएं CREATE TABLE DemoTable1587 (Value1 INT, Value2 INT); 2. डेटा डालें INSERT

  1. - MySQL तालिका में प्रत्येक मान के लिए अधिकतम (MAX) कैसे चुनें?

    MySQL में GROUP BY और MAX() का उपयोग करके प्रत्येक समूह (जैसे देश) के लिए अधिकतम मान (जैसे जनसंख्या) प्राप्त किया जा सकता है। उदाहरण देश जनसंख्या तालिका: mysql> CREATE TABLE DemoTable (CountryName VARCHAR(20), Population INT); mysql> INSERT INTO DemoTable VALUES (US, 560), (UK, 10090), (UK, 8

  1. - MySQL में 0 या 1 मान वाले कॉलम के लिए शर्तें सेट करें

    शर्तें सेट करने के लिए MySQL में CASE WHEN स्टेटमेंट का उपयोग करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> Value1 int, -> Value2 int, -> Value3 int, -> Value4 int -> ); Query OK, 0 rows affected (0.98 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉ