НүүрSQLSQL дээр түгээмэл ашиглагддаг Query-нүүд

SQL дээр түгээмэл ашиглагддаг Query-нүүд

SQL (Structured Query Language) – нь датабааз дээр ажиллах стандарт хэл бөгөөд датаг шинэчилэх, хадгалах, боловсруулах, хувиргах болон ашиглах үндсэн зорилготой. Энэхүү нийтлэлээрээ та бүхэнд SQL дээр түгээмэл ашиглагддаг Query-нүүдийг нэгтгэн хүргэж байна.

Select

Датаны тодорхой багануудыг сонгоно.

SELECT column 1, column 2, … 
FROM table_name;

Select distinct

Тухайн сонгосон багануудын давхардлыг арилгаж харуулна.

SELECT DISTINCT column 1, column 2, … 
FROM table_name;

Where

Тухайн нөхцлийг хангах утгуудыг шүүж харуулна.

SELECT column 1, column 2, … 
FROM table_name
WHERE condition;

And

Хэд хэдэн нөхцөл зэрэг биелэх утгуудыг шүүж харуулна.

SELECT column 1, column 2, … 
FROM table_name
WHERE condition 1 AND condition 2 AND condition 3

Or

Хэд хэдэнд нөхцлийн аль нэг нь биелэх утгуудыг шүүж харуулна.

SELECT column 1, column 2, … 
FROM table_name
WHERE condition 1 OR condition 2 OR condition 3

Not

Тухайн нөхцөл худал байх утгуудыг шүүж харуулна.

SELECT column 1, column 2, … 
FROM table_name
WHERE NOT condition;

Min

Сонгосон баганын хамгийн бага утгыг харуулна.

SELECT MIN (column_name) 
FROM table_name
WHERE condition;

Max

Сонгосон баганын хамгийн их утгыг харуулна.

SELECT MAX (column_name) 
FROM table_name
WHERE condition;

Count

Тухайн нөхцлийг хангаж буй утгуудыг тоог харуулна (Мөрийн тоог)

SELECT COUNT (column_name) 
FROM table_name
WHERE condition;

Avg

Тухайн нөхцлийг хангаж буй сонгосон баганын дундаж утгыг харуулна.

SELECT AVG (column_name) 
FROM table_name
WHERE condition;

Sum

Сонгосон баганын нийлбэр утгыг харуулна.

SELECT SUM (column_name) 
FROM table_name
WHERE condition;

Like

Where нөхцөл дээр ашиглагдах бөгөөд тодорхой хэв шинжийг агуулсан утгуудыг шүүхэд ашиглана.

SELECT column1, column 2, … 
FROM table_name
WHERE condition like pattern;

Жишээ:

-- Хэрэглэгчийн нэр нь а-р эхэлсэн хүмүүсийг шүүнэ.
SELECT * FROM Customers
WHERE CustomerName LIKE 'a%'
-- Хэрэглэгчийн нэрний  2 дахь үсэг нь n байх хүмүүсийг шүүнэ.
SELECT * FROM Customers                                           
WHERE CustomerName LIKE '_n%'
-- Like ашиглах зарим жишээнүүд: 
 WHERE CustomerName LIKE 'a%'  - "а" үсгээр эхэлсэн өгөгдлийг шүүнэ
 WHERE CustomerName LIKE '%a'  - "а" үсгээр төгссөн өгөгдлийг шүүнэ
 WHERE CustomerName LIKE '%xy%'  - Дундаа "xy" агуулсан өгөгдлийг шүүнэ
 WHERE CustomerName LIKE '_r%'  - 2 дахь үсэг нь "r" байх өгөгдлийг шүүнэ
 WHERE CustomerName LIKE 'a_%_%'  - "а" - р эхэлсэн, ядаж 3 тэмдэгтийн урттай өгөгдлийг шүүнэ
 WHERE ContactName LIKE 'a%o'  - "а" - р эхлээд "o" - р төгссөн өгөгдлийг шүүнэ

IN

Where нөхцөлтэй хамт ашиглагдах бөгөөд тухайн баганын утгуудын авах тодорхой утгуудыг зааж өгнө.

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, …);

Жишээ:

-- Хэрэглэгчийн датанаас хэрэглэгчийн нэр нь Alex болон John гэсэн нэртэй хүмүүсийг шүүнэ.
SELECT * FROM Customers                                           
WHERE CustomerName IN ('Alex', 'John')

Between

Тухайн баганын тоон утгын авах дээд доод хязгаарыг зааж өгнө.

SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2

Жишээ:

-- 1000-2000 дүнтэй худалдан авалт хийсэн хүмүүсийг шүүнэ.
SELECT * FROM Customers                                           
WHERE PurchaseAmount BETWEEN '1000' AND '2000'

Case when

Тухайн нөхцөл биелэх үед ямар утга авахыг зааж өгөх бөгөөд ихэвчлэн нөхцөл шалган шинэ багана үүсгэхэд ашиглана.

SELECT ColumnName,
       CASE
       WHEN condition1 THEN result1
       WHEN condition2 THEN result2
       WHEN conditionN THEN resultN
       END AS NewColumnName
from table_name

Insert into select

Нэг Table-с нөгөө рүү дата хуулахад ашиглана.

INSERT INTO table2
SELECT * FROM table
WHERE condition;

Aliases

Table болон багананд нэр өгөхөд ашиглана.

SELECT column_name(s) AS new_name
FROM table_name;

Inner Join

2 Table-ыг нийлүүлэхдээ тухайн 2 table-д хоёуланд нь байх утгуудыг авна.

SELECT column_name(s)
FROM table_name
INNER JOIN table2
ON table1.column_name = table2.column_name;

Left Join

2 table-г нийлүүлэхдээ зүүн талын Table дээр баруун талын table-н таарч буй утгуудыг нийлүүлнэ.

SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;

Right Join

2 table-г нийлүүлэхдээ баруун талын Table дээр зүүн талын table-н таарч буй утгуудыг нийлүүлнэ.

SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name

Order by

Тухайн баганын утгуудыг өсөхөөр болон буурахаар эрэмбэлнэ

SELECT column_name(s)
FROM table_name
ORDER BY column1, column2, … ASC|DESC

Group by

Тухайн баганын утгуудаар групп хийж харуулна.

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);

Having

Group by ашиглах үед Where нөхцөл ашиглахгүйгээр having ашиглаж нөхцөл бичнэ.

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
HAVING condition
ORDER BY column_name(s);

Хуваалцах:

Холбоотой нийтлэлүүд