Notes for 《Teach Yourself SQL in 10 Minutes(3rd)》
a database is a collection of data stored in some organized fashion . The simplest way to think of it is to imagine a database as a filing cabinet. The filing cabinet is simply a physical location to store data, regardless of what that data is or how it is organized.
case-insensitive?
Be aware that while the SQL language is case-in sensitive, the names of tables, columns, and values may not be (that depends on your DBMS and how it is configured).
ORDER By – must be in the end
Sorting by Multiple Columns
SELECT prod_id, prod_price, prod_name
FROM Products
ORDER BY prod_price, prod_name;
==
SELECT prod_id, prod_price, prod_name
FROM Products
ORDER BY 2, 3;
///////////////////////////////////////////////////
ORDER BY 2, 3 means sort by prod_price and then by prod_name.
///////////////////////////////////////////////////
output:
prod_id prod_price prod_name
------- ---------- --------------------
BNBG02 3.4900 Bird bean bag toy
BNBG01 3.4900 Fish bean bag toy
BNBG03 3.4900 Rabbit bean bag toy
RGAN01 4.9900 Raggedy Ann
BR01 5.9900 8 inch teddy bear
BR02 8.9900 12 inch teddy bear
RYL01 9.4900 King doll
RYL02 9.4900 Queen doll
BR03 11.9900 18 inch teddy bear
ASC or DESC?
DESC is short for DESC ENDING
ASC is short for ASCE NDING (ascending order is the default sequence)
SELECT prod_id, prod_price, prod_name
FROM Products
ORDER BY prod_price DESC, prod_name;
means:
prod_price DESC
prod_name ASC (if the DBMS assume it is default sequence)
The single quotes are used to delimit a string.
Checking for a Range of Values
SELECT prod_name, prod_price
FROM Products
WHERE prod_price BETWEEN 5 AND 10;
//Note include 5 and 10
Checking for No Value
SELECT prod_name
FROM Products
WHERE prod_price IS NULL;
Understanding Order of Evaluation
SELECT prod_name, prod_price
FROM Products
WHERE vend_id = 'DLL01' OR vend_id = 'BRS01'
AND prod_price >= 10;
Resolve ->
Using () in WHERE Clauses
WHERE (vend_id = 'DLL01' OR vend_id = 'BRS01')
AND prod_price >= 10;
Matching
% means match any number of occurrences of any character.
_ matches just a single character. no more and no less
[] specify a set of characters, any one of which must match a character in the specified position (the location of the wildcard).
Inner Join
SELECT vend_name, prod_name, prod_price
FROM Vendors, Products
WHERE Vendors.vend_id = Products.vend_id;
==
SELECT vend_name, prod_name, prod_price
FROM Vendors INNER JOIN Products
ON Vendors.vend_id = Products.vend_id;
Outer Joins
SELECT Customers.cust_id, Orders.order_num
FROM Customers LEFT OUTER JOIN Orders
ON Customers.cust_id = Orders.cust_id;
The example uses LEFT OUTER JOIN to select
all the rows from the table on the left in the FROM clause (the Customers table).
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
깊이 중첩된 객체를 정확히 일치 검색 - PostgreSQL목차 * 🚀 * 🎯 * 🏁 * 🙏 JSON 객체 예시 따라서 우리의 현재 목표는 "고용주"사용자가 입력한 검색어(이 경우에는 '요리')를 얻고 이 용어와 정확히 일치하는 모든 사용자 프로필을 찾는 것입니다. 즐거운 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.