[DB] SQL Tutorial ๐Ÿ’ฏ๏ธ

jungeundelilahLEEยท2021๋…„ 1์›” 12์ผ
0

DB(DataBase)

๋ชฉ๋ก ๋ณด๊ธฐ
2/8

goal

SQL Tutorial ๐Ÿ’ฏ๏ธ

SQL๊ณต์‹๋ฌธ์„œ๋Š” ๐Ÿ‘‰๏ธ ์—ฌ๊ธฐ๋ฅผ ์ฐธ๊ณ 

ํŠœํ† ๋ฆฌ์–ผ์—๋Š” DB๋ฅผ ์ƒ์„ฑํ•œ ํ›„, ์ƒ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋Š”, ์ฆ‰ table์— ๋Œ€ํ•ด์„œ ๋จผ์ € ์„ค๋ช…ํ•˜์ง€๋งŒ, ๊ฐœ๋…์ด ์ƒ์†Œํ•œ ๋‚˜๋ฅผ ์œ„ํ•ด DB ๋‹จ๋ถ€ํ„ฐ ์•Œ์•„๋ณด์ž!

SQL Database

โญ๏ธ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์„ฑ

CREATE DATABASE [๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„];

โญ๏ธ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ญ์ œ

DROP DATABASE [์ƒ์„ฑํ–ˆ๋˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„];

๊ธฐ์กด SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ „์ฒด ๋ฐฑ์—…

BACKUP DATABASE [๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„]
TO DIST = "[ํŒŒ์ผ๊ฒฝ๋กœ]";

โญ๏ธํ…Œ์ด๋ธ” ์ƒ์„ฑ / datatype์€ ์—ฌ๊ธฐ๋ฅผ ์ฐธ๊ณ  - ๊ณตํ™ˆ

CREATE TABLE [ํ…Œ์ด๋ธ” ์ด๋ฆ„] (
column1 datatype,
column2 datatype,
column3 datatype,
....
);

  • ์˜ˆ)
    CREATE TABLE topic(
    -> id INT(11) NOT NULL AUTO_INCREMENT,
    -> title VARCHAR(100) NOT NULL,
    -> description TEXT NULL,
    -> created DATETIME NOT NULL,
    -> PRIMARY KEY(id));

โญ๏ธํ…Œ์ด๋ธ” ์‚ญ์ œ

DROP TABLE [์ƒ์„ฑํ–ˆ๋˜ ํ…Œ์ด๋ธ” ์ด๋ฆ„];

โญ๏ธํ…Œ์ด๋ธ”์˜ column ๋ณ€๊ฒฝ (์ถ”๊ฐ€, ์‚ญ์ œ, ์ˆ˜์ •)

  • ์ถ”๊ฐ€
    ALTER TABLE [ํ…Œ์ด๋ธ” ์ด๋ฆ„]
    ADD [column์ด๋ฆ„] [ํ•ด๋‹น ๋ฐ์ดํ„ฐํƒ€์ž…]; (ex. VARCHAR(100))
  • ์‚ญ์ œ
    ALTER TABLE [ํ…Œ์ด๋ธ” ์ด๋ฆ„]
    DROP COLUMN [column์ด๋ฆ„];
  • ์ˆ˜์ •
    ALTER TABLE [ํ…Œ์ด๋ธ” ์ด๋ฆ„]
    MODIFY COLUMN [column์ด๋ฆ„] [ํ•ด๋‹น ๋ฐ์ดํ„ฐํƒ€์ž…]; (MySQL๊ธฐ์ค€ => sql๋งˆ๋‹ค ๋‹ค๋ฅด๋‹ˆ ํ™•์ธ ํ•„์š”)

โญ๏ธ ๋ฐ˜๋“œ์‹œ ์žˆ์–ด์•ผ ํ•˜๋Š” column์—๋Š” NOT NULL Constraint

  • ๊ธฐ๋ณธ์ ์œผ๋กœ column์€ NULL ๊ฐ’์„ ๊ฐ–๋Š”๋‹ค.
  • ๋”ฐ๋ผ์„œ, NOT NULL์€ column์ด NULL๊ฐ’์„ ๊ฐ–์ง€ ์•Š๋„๋ก ๊ฐ•์ œํ•œ๋‹ค.
  • NOT NULL์„ ๋„ฃ์œผ๋ฉด, field์— ํ•ญ์ƒ ๊ฐ’์ด ์ถ”๊ฐ€๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ, ๊ฐ’์ด ์—†์œผ๋ฉด, ์ƒˆ๋กœ์šด record์˜ ์ถ”๊ฐ€ ์‚ฝ์ž…, ์ˆ˜์ • ๋“ฑ์ด ๋ถˆ๊ฐ€ํ•˜๋‹ค.
  • ์˜ˆ)
    CREATE TABLE topic(
    -> id INT(11) NOT NULL
    ...

โญ๏ธ column์˜ ๊ฐ’ ์ค‘๋ณต์—ฌ๋ถ€ ํ™•์ธ์—๋Š” UNIQUE Constraint

  • PRIMARY KEY ๋Š” ์ž๋™์œผ๋กœ UNIQUE๋ฅผ ๊ฐ€์ง„๋‹ค.
  • ํ…Œ์ด๋ธ” ๋‹น ํ•˜๋‚˜์˜ PRIMARY KEY constraint๋งŒ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.
  • ์˜ˆ)
    CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CONSTRAINT UC_Person UNIQUE (ID,LastName)
    );

โญ๏ธ ๊ฐ ํ…Œ์ด๋ธ”์˜ ๊ณ ์œ ํ•œ record๋ฅผ ์‹๋ณ„ํ•˜๋Š” PRIMARY KEY constraint

  • ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”์€ ํ•˜๋‚˜์˜ PRIMARY KEY๋ฅผ ๊ฐ€์ง€๋‹ค.
  • PRIMARY KEY๋Š” single or multiple columns๋กœ ๊ตฌ์„ฑ๋  ์ˆ˜ ์žˆ๋‹ค.
  • ์˜ˆ) mysql๊ธฐ์ค€์ด๋ฉฐ, ๋ณ€๊ฒฝ์‹œ ๊ฒ€์ƒ‰์œผ๋กœ
    CREATE TABLE topic(
    -> id INT(11) NOT NULL AUTO_INCREMENT,
    -> title VARCHAR(100) NOT NULL,
    -> PRIMARY KEY (id));

โญ๏ธ ๋‘ ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” FOREIGN KEY constraint

  • FOREIGN KEY๋Š” ํ…Œ์ด๋ธ” ๊ฐ„ ์—ฐ๊ฒฐ์„ ํŒŒ๊ดดํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์˜ˆ)
    CREATE TABLE Orders (
    -> OrderID int NOT NULL,
    -> OrderNumber int NOT NULL,
    -> PersonID int,
    -> PRIMARY KEY (OrderID),
    -> CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID)
    -> REFERENCES Persons(PersonID)
    -> );

โญ๏ธ ๊ธฐ๋ณธ๊ฐ’ DEFAULT constraint

  • DEFAULT๋Š” column์— ๋Œ€ํ•œ ๊ธฐ๋ณธ๊ฐ’์„ ์ œ๊ณตํ•˜๋‹ค.
  • ๋‹ค๋ฅธ ๊ฐ’์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๋ชจ๋“  ์ƒˆ record์— ๊ธฐ๋ณธ๊ฐ’์ด ์ถ”๊ฐ€๋œ๋‹ค.

โญ๏ธ ์ž๋™ ์ฆ๊ฐ€ AUTO_INCREMENT

  • AUTO_INCREMENT๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ƒˆ record์—๊ฐ€ ํ…Œ์ด๋ธ”์— ์‚ฝ์ž…๋  ๋•Œ ๊ณ ์œ  ๋ฒˆํ˜ธ๊ฐ€ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋œ๋‹ค.

โญ๏ธ ๋‚ ์งœ์™€ ๊ด€๋ จ๋œ Date ๋ฐ์ดํ„ฐํƒ€์ž…

  • ์‹œ๊ฐ„๊นŒ์ง€ ๊ณ ๋ คํ•˜๋ฉด ํ›จ์”ฌ ๋ณต์žกํ•ด์งˆ ์ˆ˜ ์žˆ์Œ - ๊ฒ€์ƒ‰ ใ„ฑใ„ฑ
  • ์˜ˆ) mysql
    DATE - format YYYY-MM-DD
    DATETIME - format: YYYY-MM-DD HH:MI:SS
    SMALLDATETIME - format: YYYY-MM-DD HH:MI:SS
    TIMESTAMP - format: a unique number



1. SELECT

  • ๋ฐ์ดํ„ฐ๋ฅผ ์„ ํƒํ•  ๋•Œ ์‚ฌ์šฉ
  • ๋ฐ์ดํ„ฐ๋Š” result-set์ด๋ผ๋Š” result table์— ์ €์žฅ๋จ
  • SELECT CustomerName, City FROM Customers;
// ๋ถ€๋ถ„
SELECT column1, column2, ...
FROM table_name;

// ์ „์ฒด
SELECT * FROM table_name;

2. WHERE

  • records์„ ํ•„ํ„ฐ๋งํ•  ๋•Œ ์‚ฌ์šฉ
  • ์ €์žฅ๋œ ์กฐ๊ฑด์„ ์ถฉ์กฑํ•˜๋Š” records๋งŒ ์ถ”์ถœํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋จ
  • SELECT * FROM Customers WHERE Country='Mexico';
SELECT column1, column2, ...
FROM table_name
WHERE condition;
  • Operators

3. And, Or, Not

  • WHERE๊ณผ ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ์Œ
  • SELECT * FROM Customers WHERE Country = "Germany" AND City = "Berlin"
  • SELECT * FROM Customers WHERE Country='Germany' AND (City='Berlin' OR City='Mรผnchen');
  • SELECT * FROM Customers WHERE NOT Country='Germany' AND NOT Country='USA';
SELECT column1, column2, ...
FROM table_name
WHERE condition1 AND condition2 AND condition3 ...;
--
SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;
-- 
SELECT column1, column2, ...
FROM table_name
WHERE NOT condition;

4. Order By

  • result-set์„ ์˜ค๋ฆ„์ฐจ์ˆœ(ascend) or ๋‚ด๋ฆผ์ฐจ์ˆœ(descend)์œผ๋กœ ์ •๋ ฌ(sort)ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ
  • ๊ธฐ๋ณธ์ ์œผ๋กœ๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ / ๋‚ด๋ฆผ์ฐจ์ˆœ์€ DESC ์‚ฌ์šฉ
  • SELECT * FROM Customers ORDER BY Country, CustomerName; : ๊ธฐ๋ณธ์ ์œผ๋กœ Country์— ๋”ฐ๋ผ ์ •๋ ฌํ•œ ํ›„, ๊ฐ ๋‚˜๋ผ ์•ˆ์—์„œ CustomerName ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;

5. Insert Into

  • ์ƒˆ๋กœ์šด recodes๋ฅผ ์‚ฝ์ž…ํ•  ๋•Œ ์‚ฌ์šฉ
  • 2๊ฐ€์ง€ ๋ฐฉ๋ฒ•
  • ํŠน์ • ์—ด์—๋งŒ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๋ฉด, ๊ฐ column์— ํ•ด๋‹นํ•˜๋Š” ๊ฐ’์€ ์ถ”๊ฐ€๋˜๊ณ , ์ง€์ •ํ•˜์ง€ ์•Š์€ ์—ด์—๋Š” null
  1. ์‚ฝ์ž…ํ•  ์—ด ์ด๋ฆ„๊ณผ ๊ฐ’์„ ๋ชจ๋‘ ์ง€์ •
  INSERT INTO table_name (column1, column2, column3, ...)
  VALUES (value1, value2, value3, ...);
  1. ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ์—ด์— ๋Œ€ํ•œ ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒฝ์šฐ, ์ฟผ๋ฆฌ์—์„œ ์—ด ์ด๋ฆ„์„ ์ง€์ •ํ•  ํ•„์š” X
  INSERT INTO table_name
  VALUES (value1, value2, value3, ...);

6. Null Values

  • ๊ฐ’์ด ์—†๋Š” field
  • ZERO VALUES์™€๋Š” ๋”ฐ๋ฆ„
  • ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•ด์„œ null values๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ
// IS NULL - null๊ฐ’์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•œ๋‹ค (null์ด ์žˆ๋Š”์ง€ ์—ฌ๋ถ€ ํŒŒ์•…)
SELECT column_names
FROM table_name
WHERE column_name IS NULL;

// IS NOT NULL - ๋น„์–ด์žˆ์ง€ ์•Š์€ ๊ฐ’์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•œ๋‹ค
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;

7. Update

  • ๊ธฐ์กด์˜ recodes๋ฅผ ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ
  • UPDATE Customers SET ContactName = 'Alfred Schmidt', City= 'Frankfurt' WHERE CustomerID = 1; : ํ•˜๋‚˜์”ฉ ์ˆ˜์ •
  • UPDATE Customers SET ContactName='Juan' WHERE Country='Mexico'; : ์—ฌ๋Ÿฌ๊ฐœ ์ˆ˜์ •
  • UPDATE Customers SET ContactName='Juan'; : WHERE์„ ์ƒ๋žตํ•˜๋ฉด, ์ „์ฒด๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์ˆ˜์ •
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;

8. Delete

  • ํ…Œ์ด๋ธ”์—์„œ recodes๋ฅผ ์‚ญ์ œํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ
  • WHERE ์ ˆ์„ ์ƒ๋žตํ•˜๋ฉด ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ๊ฐ€ ์‚ญ์ œ๋˜๋ฏ€๋กœ ์ฃผ์˜ํ•  ๊ฒƒ
  • DELETE FROM Customers WHERE CustomerName='Alfreds Futterkiste'; : ์กฐ๊ฑด์‚ญ์ œ
  • DELETE FROM table_name; : ์ „์ฒด์‚ญ์ œ
DELETE FROM table_name WHERE condition;

9. Count

  • COUNT : ์ง€์ •๋œ ๊ธฐ์ค€๊ณผ ์ผ์น˜ํ•˜๋Š” ํ–‰ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜
  • AVG : ์ˆซ์ž ์—ด์˜ ํ‰๊ท  ๊ฐ’์„ ๋ฐ˜ํ™˜
  • SUM : ์ˆซ์ž ์—ด์˜ ์ดํ•ฉ์„ ๋ฐ˜ํ™˜
SELECT COUNT/AVG/SUM(column_name)
FROM table_name
WHERE condition;

10. Like

  • WHERE ์ ˆ์˜ ์—ด์—์„œ ์ง€์ •๋œ ํŒจํ„ด์„ ๊ฒ€์ƒ‰ํ•˜๊ธฐ์œ„ํ•ด ์‚ฌ์šฉ
  • %-๋ฐฑ๋ถ„์œจ ๊ธฐํ˜ธ๋Š” 0, 1 ๋˜๋Š” ์—ฌ๋Ÿฌ ๋ฌธ์ž๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
  • _-๋ฐ‘์ค„์€ ๋‹จ์ผ ๋ฌธ์ž๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;
  • LIKE ์—ฐ์‚ฐ์ž
    • 'a%' : a๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ชจ๋“  ๊ฐ’์„ ์ฐพ์Œ
    • '%a' : a๋กœ ๋๋‚˜๋Š” ๋ชจ๋“  ๊ฐ’์„ ์ฐพ์Œ
    • '%or%' : any position์— or์ด ์žˆ๋Š” ๋ชจ๋“  ๊ฐ’์„ ์ฐพ์Œ
    • '_r%' : ๋‘๋ฒˆ์งธ ์œ„์น˜์— r์ด ์žˆ๋Š” ๋ชจ๋“  ๊ฐ’์„ ์ฐพ์Œ
    • 'a_%' : a๋กœ ์‹œ์ž‘ํ•˜๊ณ  ๊ธธ์ด๊ฐ€ 2์ž ์ด์ƒ์ธ ๋ชจ๋“  ๊ฐ’์„ ์ฐพ์Œ
    • 'a__%' : a๋กœ ์‹œ์ž‘ํ•˜๊ณ  ๊ธธ์ด๊ฐ€ 3์ž ์ด์ƒ์ธ ๋ชจ๋“  ๊ฐ’์„ ์ฐพ์Œ
    • 'a%o' : a๋กœ ์‹œ์ž‘ํ•˜๊ณ  o๋กœ ๋๋‚˜๋Š” ๋ชจ๋“  ๊ฐ’์„ ์ฐพ์Œ

11. Wildcards

  • ๋ฌธ์ž์—ด์—์„œ ํ•˜๋‚˜ ์ด์ƒ์˜ ๋ฌธ์ž๋ฅผ ๋Œ€์ฒดํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ
  • LIKE์—ฐ์‚ฐ์ž์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ
  • MS Access์˜ ์™€์ผ๋“œ์นด๋“œ ๋ฌธ์ž
  • SQL Server์˜ ์™€์ผ๋“œ ์นด๋“œ ๋ฌธ์ž

12. Aliases

  • ํ…Œ์ด๋ธ” or ํ…Œ์ด๋ธ” ์—ด์— ์ž„์‹œ๋กœ ๋ณ„๋ช…์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ
  • ๋ณ„๋ช…์€ ์ฟผ๋ฆฌ ๊ธฐ๊ฐ„ ๋™์•ˆ๋งŒ ์กด์žฌํ•จ
// Alias Column syntax
SELECT column_name AS alias_name
FROM table_name;

// Alias Table syntax
SELECT column_name(s)
FROM table_name AS alias_name;


// ์—ฌ๋Ÿฌ๊ฐœ๋„ ๊ฐ€๋Šฅ
SELECT CustomerID AS ID, CustomerName AS Customer
FROM Customers

// ๋ณ„์นญ์— ๊ณต๋ฐฑ์ด ํฌํ•จ๋œ ๊ฒฝ์šฐ, ํฐ ๋”ฐ์˜ดํ‘œ or ๋Œ€๊ด„ํ˜ธ๊ฐ€ ํ•„์š”ํ•จ
SELECT CustomerName AS Customer, ContactName AS [Contact Person]
FROM Customers;

// ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์—ด์„ ๊ฒฐํ•ฉํ•ด์„œ, ์ƒˆ๋กœ์šด ๋ณ„์นญ(Adress)์„ ๋งŒ๋“ฆ
SELECT CustomerName, Address + ', ' + PostalCode + ' ' + City + ', ' + Country AS Address
FROM Customers;

// etc... ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ์Œ

13. Join

  • ๋‘˜ ์ด์ƒ์˜ ํ…Œ์ด๋ธ” ์‚ฌ์ด์˜ ๊ด€๋ จ column์„ ๊ธฐ๋ฐ˜์œผ๋กœ row๋ฅผ ๊ฒฐํ•ฉํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ

ํ—ท๊ฐˆ๋ฆฌ๋Š” SQL query ๋ชจ์Œ

  • Select all the different values from the Country column in the Customers table.
    : SELECT DISTINCT Country FROM Customers;

  • With SQL, how do you select all the records from a table named "Persons" where the value of the column "FirstName" starts with an "a"?
    : SELECT * FROM Persons WHERE FirstName LIKE 'a%'

  • With SQL, how do you select all the records from a table named "Persons" where the "FirstName" is "Peter" and the "LastName" is "Jackson"?
    : SELECT * FROM Persons WHERE LastName>'Hansen' AND LastName<'Pettersen'

  • With SQL, how can you insert a new record into the "Persons" table?
    : INSERT INTO Persons VALUES ('Jimmy', 'Jackson')

  • With SQL, how can you insert "Olsen" as the "LastName" in the "Persons" table?
    : INSERT INTO Persons (LastName) VALUES ('Olsen')

  • How can you change "Hansen" into "Nilsen" in the "LastName" column in the Persons table?
    : UPDATE Persons SET LastName='Nilsen' WHERE LastName='Hansen'

  • Which operator is used to select values within a range?
    : BETWEEN

  • Which operator is used to search for a specified pattern in a column?
    : LIKE

  • Select all records where the value of the City column starts with the letter "a".
    : SELECT * FROM Customers WHERE City LIKE 'a%';

  • Select all records where the value of the City column contains the letter "a".
    : SELECT * FROM Customers WHERE City LIKE '%a%;

  • Select all records where the value of the City column starts with letter "a" and ends with the letter "b".
    : SELECT * FROM Customers WHERE City LIKE 'a%b';

  • Select all records where the second letter of the City is an "a".
    : SELECT * FROM Customers WHERE City LIKE '_a%';

  • Select all records where the first letter of the City is an "a" or a "c" or an "s".
    : SELECT * FROM Customers WHERE City LIKE '[acs]%';

  • Select all records where the first letter of the City starts with anything from an "a" to an "f".
    : SELECT * FROM Customers WHERE City LIKE '[a-f]%';

profile
delilah's journey

0๊ฐœ์˜ ๋Œ“๊ธ€