Mã cheat sheet SQL với Harry
Biến thể cho TEXT&BLOB.
3 (max=255), 4 (max=~16000) và 5 (max=4Go). Bán tại. ________ 06, ________ 07, ________ 08, ________ 09 Trước khi bắt đầu với SQL Cheat Sheet, chúng ta cần hiểu cơ sở dữ liệu là gì và tại sao chúng ta cần SQL. Nếu bạn muốn tìm hiểu điều này ngoại tuyến, bạn có thể tải xuống bảng cheat cơ bản về SQL bất cứ lúc nào Show
Dữ liệu là một tập hợp các sự kiện liên quan đến bất kỳ đối tượng nào. Ví dụ. - Tên, số, ngày sinh, số điện thoại, địa chỉ email, v.v. là một tập hợp các sự thật về bạn Do đó, cơ sở dữ liệu là một tập hợp có hệ thống các đơn vị thông tin nhỏ (dữ liệu). Ví dụ. - Một danh sách có tổ chức gồm tất cả học sinh của một trường cùng với dữ liệu của họ (Tên, Số điện thoại, Ngày sinh, v.v. ) được gọi là cơ sở dữ liệu RDBMS (Hệ thống quản lý cơ sở dữ liệu quan hệ) là gì?RDBMS Viết tắt của và là một tập hợp các công cụ cho phép người dùng tổ chức, thao tác và trực quan hóa cơ sở dữ liệu. RDBMS tuân theo một số tiêu chuẩn cho phép phản hồi nhanh nhất từ cơ sở dữ liệu và giúp con người tương tác với cơ sở dữ liệu dễ dàng hơn Hãy nghĩ về RDBMS như một công cụ cho phép bạn chơi với dữ liệu của mình và tạo thông tin chi tiết hoặc giá trị từ cơ sở dữ liệu SQL (Ngôn ngữ truy vấn có cấu trúc) là gì?Bây giờ bạn đã hiểu cơ sở dữ liệu là gì và DBMS là gì, hãy tìm hiểu SQL là gì Tóm lại, cơ sở dữ liệu là tập hợp dữ liệu và RDBMS là công cụ cho phép bạn tương tác với dữ liệu của mình. Do đó, bạn sẽ cần một "ngôn ngữ" để giao tiếp với cơ sở dữ liệu mà con người và máy tính có thể hiểu được, và ngôn ngữ đó được gọi là SQL SQL là viết tắt của Ngôn ngữ truy vấn có cấu trúc. Như tên gợi ý, đây là ngôn ngữ có cấu trúc mà qua đó bạn có thể truy vấn cơ sở dữ liệu để thực hiện các tác vụ khác nhau như Lưu trữ, Thao tác và truy xuất dữ liệu từ cơ sở dữ liệu SQL là ngôn ngữ tiêu chuẩn khi giao tiếp với các cơ sở dữ liệu quan hệ mạnh mẽ như Oracle, Sybase, Microsoft SQL Server, Access, Ingres, v.v. Mọi thứ liên quan đến dữ liệu trong cơ sở dữ liệu quan hệ, chẳng hạn như tạo bảng, giới hạn quyền truy cập vào dữ liệu, sắp xếp, lọc, nhóm, v.v. , đạt được bằng cách sử dụng SQL Trong trang phục SQL này, chúng ta sẽ học mọi thứ cần biết về SQL Cảm ơn bạn đã đăng ký SQL so với MySQL. Sự khác biệt giữa cả haiHầu hết những người mới bắt đầu thường nhầm lẫn giữa hai thuật ngữ - SQL và MySQL, và đôi khi sử dụng hai thuật ngữ này thay thế cho nhau. Tuy nhiên, có một sự khác biệt rõ ràng và rộng lớn giữa hai Như đã định nghĩa trước đó, SQL là ngôn ngữ cho phép một người giao tiếp với cơ sở dữ liệu. Mặt khác, MySQL là một RDBMS trong đó bạn có thể nhập các lệnh SQL để tương tác với cơ sở dữ liệu SQL là ngôn ngữ/giao thức được sử dụng bởi các hệ thống quản lý cơ sở dữ liệu quan hệ để cho phép người dùng thao tác dữ liệu trong cơ sở dữ liệu MySQL là một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng giao diện để kết nối với cơ sở dữ liệu. MySQL cung cấp cho người dùng khả năng tạo nhiều cơ sở dữ liệu, bảng, thủ tục được lưu trữ và chức năng trong máy chủ cơ sở dữ liệu của họ. SQL là ngôn ngữ được sử dụng để thực hiện các hoạt động mạnh mẽ trên cơ sở dữ liệu Trong Bảng cheat SQL này, chúng ta sẽ xem xét cả SQL và MySQL, điều này sẽ giúp làm rõ sự khác biệt SQL có thể làm gì?SQL là một ngôn ngữ lập trình mạnh mẽ cho phép bạn giao tiếp với cơ sở dữ liệu. Hầu như tất cả các công ty đều sử dụng cơ sở dữ liệu để lưu trữ và truy xuất dữ liệu ở dạng này hay dạng khác Sử dụng SQL, bạn tạo Cơ sở dữ liệu và bên trong cơ sở dữ liệu, bạn tạo các BẢNG khác nhau để bạn có thể thêm tất cả dữ liệu của mình vào đó. Sử dụng SQL, bạn có thể
và vô số thứ hay ho khác. Vì vậy, hãy xem làm thế nào chúng ta có thể khai thác sức mạnh này Làm thế nào để bắt đầu với SQL?Để bắt đầu viết SQL trên máy tính, bạn cần cài đặt Máy chủ quản lý cơ sở dữ liệu. RDBMS sau đó sẽ cung cấp cho bạn tất cả các công cụ cần thiết để tương tác với cơ sở dữ liệu của bạn Có nhiều RDBMS khác nhau mà bạn có thể sử dụng và việc bạn chọn hệ thống nào không quan trọng (nhiều) miễn là nó phù hợp với bạn. Một số RDBMS phổ biến nhất là
Chỉ cần cài đặt bất kỳ RDBMS nào bạn thích từ trang web chính thức của họ và bạn sẽ có thể tạo một máy chủ cơ sở dữ liệu bằng cách làm theo hướng dẫn của họ. Khi bạn đã sẵn sàng máy chủ cơ sở dữ liệu, bạn có thể truy cập vào Trình soạn thảo truy vấn nơi bạn có thể nhập tất cả các truy vấn SQL của mình Bây giờ, hãy bắt đầu với cheat sheet của chúng ta và tìm hiểu một số khái niệm cơ bản về SQL và cú pháp SQL để bắt đầu Làm việc với bảngĐể làm việc với SQL, bạn cần hiểu rằng dữ liệu được sắp xếp thành các bảng. Một cơ sở dữ liệu sẽ chứa tất cả dữ liệu cho một ứng dụng (trong hầu hết các trường hợp). Một cơ sở dữ liệu sẽ có nhiều bảng lưu trữ các giá trị Ví dụ. - Nếu bạn có ứng dụng quản lý nhà hàng hoặc triển khai giải pháp E-Delivery để vận hành trơn tru, bạn sẽ có một cơ sở dữ liệu chứa các bảng như
vân vân. Mỗi bảng sẽ chứa một loại dữ liệu cụ thể và các bảng khác nhau có thể có các loại quan hệ khác nhau. Sử dụng các quan hệ SQL, chúng tôi có thể kết hợp các giá trị từ các bảng khác nhau để tìm nạp dữ liệu mà chúng tôi yêu cầu. (Thông tin thêm về các mối quan hệ trong phần sau) Để tạo một bảng, chúng tôi sẽ yêu cầu hai điều. Đầu tiên, chúng tôi sẽ cần tất cả các trường mà chúng tôi muốn lưu trữ trong một bảng. Thứ hai, chúng tôi muốn xác định loại dữ liệu sẽ nhập vào một bảng Hãy lấy bảng Khách hàng của ứng dụng quản lý nhà hàng làm ví dụ. Chúng tôi muốn lưu trữ một số thông tin về từng khách hàng của chúng tôi, chẳng hạn như tên, Số điện thoại và Mã bưu chính của họ. Bây giờ chúng ta đã hoàn thành bước đầu tiên, chúng ta cần xác định kiểu dữ liệu của các giá trị này Tên của khách hàng sẽ là kiểu dữ liệu ký tự vì chúng ta cần lưu trữ các ký tự chữ cái. Tương tự, số điện thoại sẽ lại là các ký tự vì chúng ta cần lưu trữ mã quốc gia và các ký tự đặc biệt như '+', '()', v.v. Mã bưu chính sẽ là kiểu số nguyên vì chúng ta cần lưu số. Đây là cách bảng sẽ trông như thế nào NamePhoneMã bưu chính varchar(50)varchar(15) integer Để xác định duy nhất từng khách hàng, chúng tôi thêm một ID cho họ để chúng tôi có thể sử dụng ID này để kết nối dữ liệu . Vì vậy, cấu trúc bảng cuối cùng có thể trông giống như thế này. IDTên Điện thoại Mã bưu điện INTEGER VARCHAR(50) VARCHAR(15) INTEGER To create this table, we would use the CREATE SQL Command followed by the fields as follows: TẠO BẢNG khách hàng( ID INT KHÔNG NULL, tên varchar (50), điện thoại varchar(15), Mã bưu chính INT ); Để xóa bảng này, chúng ta sẽ sử dụng lệnh DROP như sau DROP TABLE khách hàng; Các kiểu dữ liệu SQL cho máy chủĐể tạo bảng thao tác dữ liệu hiệu quả, chúng ta cần làm việc với đúng kiểu dữ liệu. Giả sử chúng ta muốn làm việc với ngày tháng, sẽ dễ dàng hơn khi tạo một cột để giữ các giá trị kiểu NGÀY thay vì lưu trữ chúng dưới dạng chuỗi và viết logic để thao tác các giá trị Mỗi RDBMS đều khác nhau và mỗi RDBMS có thể có một kiểu dữ liệu khác nhau để làm việc với các giá trị nhất định. Các phần sau của Bảng cheat SQL này chứa các loại kiểu dữ liệu MySQL khác nhau Kiểu dữ liệu chuỗiKiểu dữ liệuMô tả CHAR(size) Chuỗi có độ dài cố định có thể chứa số, chữ cái . Độ dài chuỗi từ 0 - 255 VARCHAR(size) Chuỗi độ dài thay đổi tương tự như CHAR() nhưng có độ dài từ 0 đến 65535. TEXT(size) Giữ một chuỗi có tối đa 65.536 byte. TINY TEXTGiữ chuỗi có tối đa 255 ký tự. Văn bản TRUNG BÌNHGiữ một chuỗi có độ dài tối đa là 16.777.215 ký tự. Văn bản DÀI Giữ một chuỗi có độ dài tối đa là 4.294.967.295 ký tự. BINARY(size) Tương tự CHAR() nhưng lưu chuỗi byte nhị phân. VARBINARY(size) Tương tự VARCHAR() nhưng đối với chuỗi byte nhị phân. BLOB(size) Để giữ các đốm màu lên tới 65.536 byte. TINYBLOB Được sử dụng cho BLOB (Đối tượng lớn nhị phân). Có độ dài tối đa là 255 byte. MEDIUMBLOB Giữ các đốm màu lên tới 16.777.215 byte. LONGBLOB Giữ các đốm màu có kích thước lên tới 4.294.967.295 byte. ENUM(val1,val2,…) Một đối tượng chuỗi chỉ có thể có một giá trị được chọn từ danh sách các giá trị có thể có lên đến 65535 giá trị trong một . Nếu giá trị được chèn không có trong danh sách, một giá trị trống sẽ được chèn vào. list. If the value inserted is not in the list, a blank value will be inserted. SET(val1,val2,…) Một đối tượng chuỗi có thể có 0 hoặc nhiều giá trị, được chọn từ danh sách các giá trị có thể. Bạn có thể liệt kê tối đa 64 giá trị trong danh sách SET. Kiểu dữ liệu sốLoại dữ liệuMô tả BIT(kích thước) Loại giá trị bit. Tham số kích thước có thể giữ giá trị từ 1 đến 64. Giá trị mặc định cho kích thước là 1. INT(size) Số nguyên trung bình có phạm vi có dấu từ -2147483648 đến 2147483647 và phạm vi không dấu từ 0 đến 4294967295. TINYINT(size) Một số nguyên rất nhỏ. Phạm vi đã ký là từ -128 đến 127. Phạm vi không dấu là từ 0 đến 255. SMALLINT(size) Một số nguyên nhỏ. Phạm vi đã ký là từ -32768 đến 32767. Phạm vi không dấu là từ 0 đến 65535. MEDIUMINT(size) Số nguyên trung bình. Phạm vi đã ký là từ -8388608 đến 8388607. Phạm vi không dấu là từ 0 đến 16777215. BIGINT(size) Số nguyên lớn. Phạm vi đã ký là từ -9223372036854775808 đến 9223372036854775807. Phạm vi không dấu là từ 0 đến 18446744073709551615. BOOL/BOOLEAN Các giá trị bằng 0 được coi là FALSE và các giá trị khác 0 được coi là TRUE. FLOAT(p) Giá trị dấu phẩy động. Nếu tham số độ chính xác (p) nằm trong khoảng từ 0 đến 24, loại dữ liệu được đặt thành FLOAT() và nếu từ 25 đến 53, loại dữ liệu được đặt thành DOUBLE(). Điều này làm cho việc lưu trữ các giá trị hiệu quả hơn. DOUBLE(size,d) Giá trị số dấu phẩy động trong đó tổng các chữ số được đặt theo tham số kích thước, và số chữ số sau dấu thập phân được đặt bởi tham số d. Một số điểm cố định chính xác với tổng số chữ số được đặt bởi các tham số kích thước và . Đối với kích thước, số lượng tối đa là 65 và mặc định là 10, trong khi đối với d, số lượng tối đa là 30 và mặc định là 10. Lưu ý. Tất cả các loại dữ liệu số có thể có một tùy chọn bổ sung. UNSIGNED hoặc ZEROFILL. Nếu bạn thêm tùy chọn UNSIGNED/ZEROFILL, MySQL sẽ không cho phép các giá trị âm cho cột. Kiểu dữ liệu ngày/giờLoại dữ liệuMô tả NGÀY Một ngày đơn giản ở định dạng YYYY-MM–DD, hỗ trợ một phạm vi . TIME(fsp) Thời gian tính bằng hh. mm. ss, với phạm vi được hỗ trợ từ '-838. 59. 59' đến '838. 59. 59’ DATETIME(fsp) Kết hợp ngày và giờ trong YYYY-MM-DD hh. mm. định dạng ss. Phạm vi được hỗ trợ là từ '1000-01-01 00. 00. 00' đến '9999-12-31 23. 59. 59' DẤU THỜI GIAN(fsp) Dấu thời gian Unix, là một giá trị liên quan đến số giây kể từ kỷ nguyên Unix (‘1970-01-01 00. 00. 00’ UTC). Điều này có phạm vi được hỗ trợ từ '1970-01-01 00. 00. 01’ UTC đến ‘2038-01-09 03. 14. 07’ UTC. NĂM Một năm ở định dạng bốn chữ số với phạm vi từ - 1901 đến 2155 Thao tác CRUD với SQL Bây giờ chúng ta đã có (các) bảng sẵn sàng, hãy xem cách chúng ta có thể lưu trữ và truy xuất dữ liệu từ các bảng trong cơ sở dữ liệu của mình. Trong các phần tiếp theo của Bảng cheat cơ bản về SQL này, chúng ta sẽ xem xét các thao tác SQL cơ bản nhất CRUD là từ viết tắt của Tạo, Đọc, Cập nhật và Xóa. Đây là những thao tác cơ bản nhất mà người ta có thể thực hiện trên bất kỳ cơ sở dữ liệu nào. Để tạo bất kỳ ứng dụng nào, 4 loại thao tác này rất quan trọng. họ đang. -
CHÈN Để chèn dữ liệu vào bất kỳ bảng nào, chúng ta sử dụng câu lệnh INSERT INTO. Cú pháp chung để chèn là CHÈN VÀO tên_bảng(cột1,cột2,. ) GIÁ TRỊ(val1,val2,. ); Để chèn dữ liệu vào bảng của khách hàng, chúng tôi sẽ sử dụng câu lệnh sau CHÈN VÀO khách hàng (ID, tên, điện thoại, mã bưu chính) GIÁ TRỊ(1,'Alice','+123456789',123456); LỰA CHỌN Để đọc dữ liệu từ một bảng, chúng tôi sẽ sử dụng câu lệnh Chọn trong đó chúng tôi xác định các cột mà chúng tôi muốn tìm nạp. Cú pháp chung là CHỌN cột1, cột2,. TỪ tên_bảng; Nếu chúng tôi muốn chọn tên và số điện thoại của khách hàng từ bảng của mình, chúng tôi sẽ sử dụng CHỌN tên, điện thoại TỪ khách hàng; Ngoài ra, để đọc tất cả các cột từ bảng của chúng tôi, chúng tôi có thể thay thế các tên cột bằng * như sau CHỌN * TỪ khách hàng; CẬP NHẬT Để cập nhật (các) cột cụ thể của (các) hàng cụ thể, chúng tôi sử dụng câu lệnh Cập nhật. Cú pháp chung cho một câu lệnh cập nhật là CẬP NHẬT tên_bảng ĐẶT cột1=giá trị1,cột2=giá trị2, điều kiện NƠI. ; Ví dụ: nếu chúng tôi muốn cập nhật số điện thoại của khách hàng có ID là 2, chúng tôi sẽ viết truy vấn của mình là CẬP NHẬT khách hàng ĐẶT điện thoại='+2223334445' Ở ĐÂU = 2; Chúng tôi có thể cập nhật nhiều cột bằng cách thêm chúng vào câu lệnh SET và chúng tôi có thể nhắm mục tiêu nhiều hàng bằng cách thêm chúng vào câu lệnh WHERE. Chúng ta sẽ xem xét WHERE một cách chi tiết trong các phần sau của bảng cheat lệnh SQL này XÓA BỎ Nếu chúng tôi muốn xóa một số hàng khỏi bảng, chúng tôi sẽ sử dụng câu lệnh xóa. Cú pháp chung là XÓA KHỎI tên_bảng điều kiện ở đâu. ; Giả sử chúng ta muốn xóa tất cả khách hàng sống ở một khu vực cụ thể. Vì vậy, chúng tôi chỉ cần xóa những hàng có mã vùng cụ thể XÓA KHỎI khách hàng Ở ĐÂU Mã bưu chính = 223344; Danh sách từ khóa SQL hữu íchTrong phần sau của SQL Server Cheat Sheet này, chúng ta sẽ xem xét tất cả các lệnh/từ khóa mà chúng ta có thể sử dụng trong SQL để làm việc với dữ liệu, bảng và cơ sở dữ liệu Mô tả THÊM Thêm cột mới vào bảng hiện có. Ví dụ. ALTER TABLE khách hàng ADD email_address VARCHAR(255); ALTER TABLE Thêm, xóa hoặc chỉnh sửa cột/ràng buộc trong bảng. Ví dụ. ALTER TABLE customers DROP COLUMN email_address; ALTER COLUMNThay đổi kiểu dữ liệu của cột trong bảng. Ví dụ. ALTER TABLE customers ALTER COLUMN phone varchar(50) AS Đổi tên bảng hoặc cột bằng giá trị bí danh chỉ tồn tại trong khoảng thời gian truy vấn. Ví dụ. CHỌN tên NHƯ tên_khách hàng, điện thoại, Mã bưu chính TỪ khách hàng; ASC Được sử dụng với ORDER BY để trả về dữ liệu theo thứ tự tăng dần. KIỂM TRA Thêm ràng buộc giới hạn giá trị có thể thêm vào cột. Ví dụ. TẠO BẢNG Người dùng(firstName varchar(255),tuổi INT, CHECK(tuổi>10)); TẠO CƠ SỞ DỮ LIỆU Tạo cơ sở dữ liệu mới. Ví dụ. TẠO CƠ SỞ DỮ LIỆU trang web của tôi; TẠO BẢNG Tạo bảng mới. Ví dụ. TẠO BẢNG người dùng (id int,firsr_name varchar(255), họ varchar(255), địa chỉ varchar(255), contact_number int); MẶC ĐỊNH Đặt . Ví dụ. CREATE TABLE products(ID int, name varchar(255) DEFAULT 'Username', from date DEFAULT GETDATE()); DELETE Xóa giá trị khỏi bảng. XÓA TỪ người dùng WHERE user_id= 674; DESC Được sử dụng với ORDER BY để trả về dữ liệu theo thứ tự giảm dần. DROP COLUMN Xóa một cột khỏi bảng. ALTER TABLE users DROP COLUMN first_name; DROP DATABASE Xóa cơ sở dữ liệu hoàn chỉnh cùng với tất cả các bảng và dữ liệu bên trong. Ví dụ. DROP DATABASE trang web của tôi; DROP DEFAULT Xóa giá trị mặc định cho một cột. Ví dụ. ALTER TABLE products ALTER COLUMN name DROP DEFAULT; DROP TABLE Xóa bảng khỏi cơ sở dữ liệu. Ví dụ. DROP TABLE khách hàng; FROM Chỉ định bảng nào sẽ chọn hoặc xóa dữ liệu khỏi. Ví dụ. CHỌN * TỪ khách hàng; IN Được sử dụng với mệnh đề WHERE dưới dạng viết tắt cho nhiều điều kiện OR. Ví dụ. CHỌN * TỪ người dùng WHERE country IN('USA', 'United Kingdom','Russia'); IS NULL Kiểm tra giá trị trống (NULL). Ví dụ. SELECT * FROM users WHERE phone IS NULL; IS NOT NULL Ngược lại IS NULL. Kiểm tra các giá trị không null. THÍCH Trả về true nếu giá trị toán hạng khớp với một mẫu. SELECT * FROM users WHERE first_name LIKE '%son'; ORDER BY Được sử dụng để sắp xếp dữ liệu kết quả theo thứ tự tăng dần (mặc định) hoặc giảm dần. CHỌN DISTINCT Tương tự như CHỌN, ngoại trừ các giá trị trùng lặp bị loại trừ. Ví dụ. CHỌN Mã bưu điện DISTINCT từ khách hàng; TOP Được sử dụng cùng với SELECT để trả về một số bản ghi đã đặt từ một bảng. Ví dụ. CHỌN 5 * HÀNG ĐẦU TỪ khách hàng; GIÁ TRỊ Được sử dụng cùng với từ khóa INSERT INTO để thêm giá trị mới vào bảng. Ví dụ. CHÈN VÀO ô tô (tên, mẫu, năm) GIÁ TRỊ ('Ford', 'Fiesta', 2010); WHERE Kết quả bộ lọc chỉ bao gồm dữ liệu đáp ứng . CHỌN * TỪ đơn đặt hàng WHERE số lượng > 1; Toán tử trong SQLSQL có nhiều toán tử khác nhau cho phép bạn thao tác và so sánh nhiều giá trị. Đây là rất hữu ích và tiện dụng trong khi tạo các truy vấn Toán tử số học SQL
Toán tử SQL Bitwise Toán tử Toán tử so sánh SQL
Toán tử hợp chất SQL
Toán tử logic SQL Mô tả TẤT CẢ TRUE nếu tất cả các giá trị truy vấn con đáp ứng điều kiện AND TRUE if all the conditions separated by AND is TRUE ANY TRUE if any of the subquery values meet the condition BETWEEN TRUE if the operand is within the range of comparisons EXISTS TRUE if the subquery returns one or more records IN TRUE if the operand is equal to one of a list of expressions LIKE TRUE if the operand matches a pattern NOT Displays a record if the condition(s) is NOT TRUE OR TRUE if any of the conditions separated by OR is TRUE SOME TRUE if any of the subquery values meet the condition SQL KeysTrong cơ sở dữ liệu, các bảng khác nhau lưu trữ các giá trị khác nhau và các giá trị này có liên quan với nhau. Để xác định duy nhất từng hàng, chúng tôi sử dụng các phím SQL. Khóa SQL là một cột (hoặc thuộc tính) hoặc một nhóm cột có thể xác định duy nhất các hàng trong bảng. Khóa SQL đảm bảo rằng không có bất kỳ hàng nào có giá trị trùng lặp Tuy nhiên, công dụng mạnh mẽ nhất của khóa là thiết lập quan hệ giữa nhiều bảng trong cơ sở dữ liệu. Để làm như vậy, chúng ta cần hiểu Khóa chính và Khóa ngoại. Các phần sau của trang phục SQL này giải thích cả hai khái niệm này Khóa chính Đó là một khóa xác định duy nhất một hàng trong bảng. Ví dụ: trong bảng của khách hàng, khóa ID có thể được sử dụng làm khóa chính để xác định duy nhất một khách hàng. Sau đó, khóa này có thể được sử dụng để tìm nạp dữ liệu từ nhiều bảng có dữ liệu liên quan đến khách hàng Những điểm chính
Thông thường, khóa chính trong bảng là cột ID và thường được ghép nối với từ khóa AUTO_INCREMENT để xác định duy nhất hàng. Để đánh dấu một cột là khóa chính, chúng tôi sử dụng từ khóa PRIMARY KEY theo sau là cột/cột chứa khóa chính. Ví dụ. - CREATE TABLE users ( id int NOT NULL AUTO_INCREMENT, first_name varchar(255) NOT NULL, last_name varchar(255) NOT NULL, address varchar(255), email varchar(255) NOT NULL, PRIMARY KEY (id) );
Khóa ngoại là một trường trong bảng tham chiếu KHÓA CHÍNH của bảng khác. Khóa ngoại được sử dụng để liên kết hai bảng với nhau bằng cách thiết lập mối quan hệ Bảng chứa khóa ngoại được gọi là bảng con, trong khi bảng chứa khóa chính cho khóa ngoại được gọi là bảng cha Ví dụ. Giả sử chúng ta có 3 bảng khác nhau để quản lý một nhà hàng - sản phẩm, người dùng và đơn đặt hàng. Trong bảng sản phẩm của chúng tôi, chúng tôi liệt kê tất cả các sản phẩm của mình và trong bảng người dùng, chúng tôi có thông tin chi tiết về tất cả người dùng của mình. Khi người dùng đặt hàng, chúng tôi lưu dữ liệu vào bảng đơn hàng. Tuy nhiên, thay vì lưu toàn bộ chi tiết của sản phẩm và tất cả thông tin của người dùng, chúng tôi lưu các khóa chính của họ trong bảng đơn hàng CREATE TABLE orders( order_id INT NOT NULL, user_id INT, product_id int, PRIMARY KEY(order_id), FOREIGN KEY(user_id) REFERENCES users(id), FOREIGN KEY(product_id) REFERENCES products(id) ); 0Ở đây, chúng tôi tạo một khóa chính cho ID đơn đặt hàng vì nó xác định duy nhất một đơn đặt hàng. Ngoài ra, chúng tôi tạo hai khóa ngoại tham chiếu các khóa chính khác nhau Tham gia SQLKhi bạn hiểu Khóa chính và Khóa ngoại, bạn có thể sử dụng phép nối để tìm nạp dữ liệu bằng cách kết hợp nhiều bảng. Hãy lấy bảng đơn đặt hàng, khách hàng và sản phẩm làm ví dụ Các sản phẩm product_name price 1 Bánh mì kẹp thịt 10 2 Sandwich 15 Customers: customer_id đơn đặt hàng order_id Chúng tôi có thể tham gia bảng đơn đặt hàng với khách hàng và bảng sản phẩm để chỉ nhận thông tin mà chúng tôi yêu cầu. Giả sử chúng ta muốn xem tất cả các đơn đặt hàng có tên khách hàng, tên sản phẩm và giá sản phẩm như sau order_idproduct_name customer_name price 1 Burger Alice 10 2 Sandwich Alice 15 3 Burger Bob 10 To do so, we would use join in SQL as follows: 1 2
SQL Cheatsheet cho truy vấn CHỌN1. Truy xuất các cột cụ thể CHỌN userId, tên, tuổi, điện thoại, quốc gia TỪ Người dùng; 2. Truy xuất tất cả các cột CHỌN * TỪ Người dùng; 3. Truy xuất các hàng đã lọc SELECT * FROM Users WHERE tuổi>18; 4. Truy xuất các hàng riêng biệt CHỌN quốc gia DISTINCT từ Người dùng; 5. Đếm số hàng đã lọc CHỌN COUNT(*) TỪ người dùng có tuổi>18; 6. Sắp xếp hàng dựa trên tiêu chí CHỌN * TỪ ĐẶT HÀNG CỦA NGƯỜI DÙNG THEO userId ASC/DESC; Ghi chú. Bạn có thể sử dụng ASC cho thứ tự tăng dần hoặc DESC cho thứ tự giảm dần. Nếu không có gì được chỉ định, việc sắp xếp được thực hiện theo thứ tự Tăng dần (ASC) 7. Truy xuất các hàng có giới hạn 8. Truy xuất và bỏ qua/bù hàng CHỌN * TỪ NGƯỜI DÙNG ĐẶT HÀNG THEO userId TÙY CHỌN 10 ROWS; 9. Nhận Trung bình, Tổng, Tối đa, Tối thiểu, v.v. kết quả CHỌN AVG(tuổi) TỪ NGƯỜI DÙNG; 10. Nhận tất cả các giá trị từ hai bảng CHỌN * TỪ Người dùng INNER THAM GIA Ví TRÊN Người dùng. walletId = Ví. id ví; Ghi chú. - Chúng tôi có thể sử dụng bất kỳ loại tham gia mà chúng tôi muốn. Điều kiện mà chúng tôi muốn tham gia các bảng cần được chỉ định sau từ khóa BẬT 11. Nhận các giá trị đã chọn từ hai bảng 3____14Ghi chú. - Ta sử dụng từ khóa AS để đặt bí danh cho bảng nhằm làm câu lệnh SELECT ngắn gọn hơn. Chúng tôi thậm chí có thể loại bỏ từ khóa AS trong trường hợp này và chỉ cần viết Bí danh sau tên bảng Bảng mã SQL cho truy vấn INSERT1. Chèn tất cả các giá trị theo thứ tự một bảng CHÈN VÀO GIÁ TRỊ NGƯỜI DÙNG('Kanak Infosystems','sales@kanakinfosystems. com’,9876543210); 2. Chèn các giá trị đã chọn vào bảng CHÈN VÀO Người dùng (tên người dùng, email) GIÁ TRỊ ('Kanak Infosystems','sales@kanakinfosystems. com’); 3. Chèn nhiều hàng 5 6Ghi chú. - Chúng tôi ngăn cách mỗi hàng bằng một cặp dấu ngoặc đơn theo sau là dấu phẩy SQL Cheatsheet cho các truy vấn TABLE1. Tạo một bảng mới 0 12. Xóa bảng DROP TABLE Người dùng; 3. Xóa tất cả Giá trị khỏi Bảng TRUNCATE TABLE Người dùng; 4. Thêm một cột vào bảng ALTER TABLE Users ADD COLUMN country VARCHAR(20); 5. Xóa cột khỏi bảng ALTER TABLE Người dùng DROP COLUMN quốc gia; 6. Đổi tên một bảng ALTER TABLE Users ĐỔI TÊN KHÁCH HÀNG; 7. Đổi tên một cột ALTER TABLE Users RENAME userName thành tên; Bảng cheat SQL cho các truy vấn CẬP NHẬT/XÓA1. Cập nhật giá trị cột cho tất cả các hàng CẬP NHẬT Người dùng SET country=’india’; 2. Cập nhật giá trị cột cho các hàng đã chọn CẬP NHẬT Người dùng SET isEworthy=’true’ WHERE tuổi>=18; 3. Xóa tất cả các hàng XÓA KHỎI Người dùng; 4. Xóa các hàng cụ thể XÓA KHỎI Người dùng ở độ tuổi <18; Bảng cheat SQL cho các bộ lọc CHỌN1. Lọc theo nhiều điều kiện phù hợp SELECT * FROM Users WHERE age>=18 AND country=’india’; 2. Lọc hàng theo nhiều điều kiện song song CHỌN * TỪ Người dùng WHERE country=’india’ OR name THÍCH ‘Kan%’; 3. Lọc hàng dựa trên giá trị trong danh sách SELECT * FROM Users WHERE age IN (15,18,22,27); 4. Lọc các hàng có giá trị trong một phạm vi CHỌN * TỪ Người dùng ở độ tuổi GIỮA 25 VÀ 30 Phần kết luậnSQL là một yêu cầu nhất định khi bạn đang cố gắng xây dựng một ứng dụng ở mọi quy mô và kích thước. Học SQL có thể khó đối với người mới bắt đầu, nhưng một khi bạn đã quen với nó, nó giống như suy nghĩ Đảm bảo đánh dấu trang này và tải xuống bản pdf cheat sheet SQL nếu bạn đang làm việc với SQL. Nếu bạn có thể nhớ một thao tác hoặc từ khóa cụ thể, bạn có thể mở bảng cheat lệnh SQL này để lấy tất cả thông tin cần thiết 5 lệnh SQL cơ bản là gì?Một số lệnh SQL quan trọng nhất . CHỌN - trích xuất dữ liệu từ cơ sở dữ liệu CẬP NHẬT - cập nhật dữ liệu trong cơ sở dữ liệu XÓA - xóa dữ liệu khỏi cơ sở dữ liệu INSERT INTO - chèn dữ liệu mới vào cơ sở dữ liệu CREATE DATABASE - tạo cơ sở dữ liệu mới ALTER DATABASE - sửa đổi cơ sở dữ liệu TẠO BẢNG - tạo một bảng mới Mã DBMS với Harry là gì?Nó được định nghĩa là tập hợp các dữ liệu có liên quan với nhau được lưu trữ cùng nhau để phục vụ nhiều ứng dụng .
Bảng cheat SQL là gì?Bảng cheat cơ bản về SQL cung cấp cho bạn cú pháp của tất cả các mệnh đề cơ bản, chỉ cho bạn cách viết các điều kiện khác nhau và có các ví dụ . Bạn có thể tải xuống bảng cheat này như sau. Tải xuống Bảng hướng dẫn cơ bản về SQL dài 2 trang ở định dạng PDF (A4)
Học SQL có khó không?Bởi vì SQL là một ngôn ngữ tương đối đơn giản , người học có thể mong đợi làm quen với những điều cơ bản trong vòng hai đến ba tuần. Điều đó nói rằng, nếu bạn dự định sử dụng các kỹ năng SQL tại nơi làm việc, có lẽ bạn sẽ cần mức độ lưu loát cao hơn. |