1. Trang chủ
  2. » Công Nghệ Thông Tin

Học SQL từ con số không

16 566 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 16
Dung lượng 298,6 KB
File đính kèm SQL.rar (453 KB)

Nội dung

Tài liệu này trình bày một số những vấn đề cơ bản nhất cho những bạn mới bắt đầu học SQL. Tài liệu được dịch từ khóa học Learn SQL của Codecademy. Quá trình dịch không tránh khỏi những sai sót. Rất mong nhân được góp ý từ mọi người. Để thực hành những gì được nói đến trong tài liệu, bạn có thể đăng ký khóa Learn SQL theo link sau: https:www.codecademy.comlearnlearnsql

SQL BASIC MỤC LỤC Thuật ngữ Các thao tác (manipulation) Tạo bảng Thêm hàng vào bảng (Add a row to the table) Lệnh SELECT, FROM Cập nhật liệu bảng Thay đổi bảng (ALTER TABLE) Xóa hàng liệu Truy vấn (query) SELECT SELECT DISTINCT WHERE Toán tử LIKE 10 BETWEEN 11 AND 11 OR 12 ORDER BY 12 LIMIT 13 Hàm tổng hợp – Aggregate Functions (AS) 13 Count 14 Group By 14 Sum 14 Max 15 Min 15 Average 15 Round 15 Thuật ngữ - Một relational database (cơ sở liệu quan hệ) sở liệu mà tổ chức thông tin thành hay nhiều bảng Ở sở liệu quan hệ chứa bảng - Một bảng (table) tập hợp liệu tổ chức thành hàng cột Bảng thường gọi quan hệ (relations) - Một cột (column) tập giá trị liệu kiểu cụ thể - Một hàng (row) ghi đơn bảng - Tất liệu lưu sở liệu quan hệ kiểu liệu chắn Một số kiểu thường sử dụng o Integer: số nguyên dương âm o Text: chuỗi văn o Date: định dạng YYYY-MM-DD o Real: giá trị số thực Các thao tác (manipulation) Ở phần ta học lệnh thường sử dụng để quản lý liệu lưu trữ sở liệu quan hệ Một lệnh (statement) chuỗi ký tự mà sở liệu chấp nhận lệnh hợp lệ Lệnh Chức CREATE TABLE Tạo bảng INSERT INTO Thêm hàng vào bảng SELECT Truy vấn liệu từ bảng UPDATE Chỉnh sửa hàng bảng ALTER TABLE Thay đổi bảng có DELETE FROM Xóa hàng từ bảng Tạo bảng Đoạn mã bên môt lệnh SQL, Một lệnh (statement) văn nhận dạng sở liệu mệnh lệnh có giá trị Lệnh luôn kết thúc dấu “;” Bây ta phân tích lệnh trên: - CREAT TABLE: mệnh đề Mệnh đề thực tác vụ cụ thể SQL Theo quy ước, mệnh đề viết in hoa Mệnh đề thường gọi lệnh - table_name: đề cập đến tên bảng mà lệnh áp dụng - (column_1 data_type, column_2 data_type, column_3 data_type) tham số, danh sách cột, kiểu liệu, giá trị truyền đến mệnh đề đối số Ở tham số danh sách cột kiểu liệu liên quan Cấu trúc lệnh SQL khác Số lượng dòng sử dụng không quan trọng Một lệnh viết hoàn toàn dòng, chia thành nhiều dòng dễ đọc Ví dụ: Lệnh tạo bảng sở liệu có tên celebs Thêm hàng vào bảng (Add a row to the table) Lệnh INSERT chèn hàng vào bảng Bạn sử dụng lệnh INSERT muốn thêm ghi (record) - INSERT INTO: mệnh đề để thêm nhiều hàng cụ thể - celebs: tên bảng mà hàng thêm vào - (id, name, age): định danh tham số cột mà liệu chèn vào - VALUES: mệnh đề mà cho biết liệu chèn vào (1, ‘Justin Bieber’, 21) định danh tham số giá trị chèn vào Lệnh SELECT, FROM Lệnh SELECT sử dụng để lấy liệu từ sở liệu Ở đây, lệnh SELECT trả tất liệu cột NAME bảng celebs - SELECT: mệnh đề cho biết lệnh truy vấn (query) Bạn sử dụng SELECT bạn truy vấn liệu từ sở liệu - name: cột cụ thể để truy vấn từ liệu - FROM celebs: tên bảng cụ thể để truy vấn liệu Trong lệnh này, liệu yêu cầu từ bảng celebs Ta truy vấn liệu từ tất cột bảng với SELECT ‘*’ ký tự đặc biệt sử dụng Nó cho phép ta chọn tất cột bảng mà không cần phải đặt tên cho cột Ở tập kết (result set) chứa tất cột bảng celebs Lệnh SELECT luôn trả bảng gọi result set Cập nhật liệu bảng Lệnh UPDATE chỉnh sửa hàng bảng Bạn sử dụng lệnh bạn muốn thay đổi ghi có - UPDATE: mệnh đề để chỉnh sửa hàng bảng - celebs: tên bảng - SET: mệnh đề cột chỉnh sửa o age: tên cột mà bạn cập nhật o 22: giá trị chèn vào cột age - WHERE: mệnh đề hàng để cập nhật với giá trị cột Ở đây, hàng cột id hàng có age cập nhật thành 22 Thay đổi bảng (ALTER TABLE) Lệnh ALTER TABLE thêm cột vào bảng Bạn sử dụng lệnh bạn muốn thêm cột vào bảng - ALTER TABLE: mệnh đề cho phép bạn thực thay đổi cụ thể - cebles: tên bảng thay đổi - ADD COLUMN: mệnh đề cho phép bạn thêm cột vào bảng o twitter_handle: tên cột thêm vào o TEXT: kiểu liệu cột - NULL: giá trị đặc biệt SQL, thể cho liệu bị chưa biết Ở đây, hàng tồn trước cột thêm vào có giá trị NULL cho twitter_handle Xóa hàng liệu Lệnh DELETE FROM xóa nhiều hàng từ bảng Bạn sử dụng lệnh bạn muốn xóa ghi có - DELETE FROM: mệnh đề cho phép bạn xóa hàng từ bảng - celebs: tên bảng muốn xóa hàng - WHERE: mệnh đề cho phép bạn chọn hàng bạn muốn xóa Ở đây, muốn xóa tất hàng cột twitter_handle có giá trị NULL - IS NULL: điều kiện SQL, trả true giá trị NULL, ngược lại trả false Truy vấn (query) Trong phần ta nói lệnh SQL khác để truy vấn bảng đơn sở liệu Một mục đích cốt lõi ngôn ngữ SQL truy hồi thông tin lưu trữ sở liệu Việc thường gọi truy vấn Truy vấn cho phép giao tiếp với sở liệu việc hỏi câu hỏi tập kết trả liên quan đến câu hỏi Trong phần này, ta truy vấn sở liệu với bảng tên “movies” Những mệnh đề toán tử mà ta nói đến phần - SELECT: mệnh đề bạn sử dụng bạn muốn truy vấn thông tin từ sở liệu - WHERE: câu lệnh thông dụng cho phép lộc kết truy vấn dựa điều kiện cụ thể - LIKE BETWEEN: toán tử đặc biệt sử dụng mệnh đề WHERE - AND OR: toán tử đặc biệt mà bạn sử dụng với WHERE để lộc câu truy vấn có từ điều kiện trở lên - ORDER BY: cho phép bạn xếp kết truy vấn theo thứ tự giảm dần tăng dần - LIMIT: cho phép bạn xác định cụ thể số hàng lớn mà truy vấn trả Toán tử đặc biệt quan trọng bảng lớn có hàng ngàn hay chí hàng triệu hàng SELECT Trong phần trước ta biết SELECT sử dụng ta muốn truy vấn liệu từ sở liệu Nhiều cột truy vấn lần cách phân biệt cột dấu ‘,’ Như câu lệnh trên, tập kết chứa cột name imdb_rating SELECT DISTINCT SELECT DISTINCT sử dụng để trả giá trị tập kết Ở tập kết thiết lập genre bảng movies lần Có thể hiểu có hàng trùng lấy kết hàng - SELECT DISTINCT: quy định cụ thể truy vấn trả giá trị cột cụ thể - genre: tên bảng để hiển thị tập kết - FROM movies: cho biết tên bảng để truy vấn Lộc kết truy vấn kỹ quan trọng SQL Rất dễ để nhìn thấy thể loại phim khác sau liệu lộc, quét tất dòng bảng Những mục nói lệnh khác SQL để lộc kết truy vấn WHERE Lênh lộc tập kết để bao gồm phim có rating IMDb lớn Vậy làm việc nào? - WHERE: mệnh đề cho biết bạn muốn lộc tập kết để chứa hàng mà điều kiện - imdb_rating > 8: điều kiện để lộc tập kết Ở đây, hàng với giá trị lớn cột imdb_rating trả tập kết - ‘>’ : toán tử Các toán tử làm cho điều kiện đánh giá hay sai Những toán tử thường sử dụng: =, !=, >, =, [...]... bảng chữ cái hoặc theo số lượng - imdb_rating: là tên của cột sẽ được sắp xếp - DESC: là từ khóa trong SQL được sử dụng với ORDER BY để sắp xếp kết quả theo thứ tự giảm dần - descending order (từ cao xuống thấp hoặc Z  A) Ở đây, nó sắp xếp tất cả phim từ cao nhất xuống thấp nhất theo IMDb rating Ta cũng có thể sắp xếp kết quả theo thứ tự tăng dần – ascending order, sử dụng từ khóa ASC LIMIT Thỉnh... việc giới hạn số lượng hàng trong một tập kết quả sẽ rất quan trọng LIMIT là một toán tử cho phép ta chỉ định số lượng hàng tối đa mà tập kết quả sẽ có Ở đây, chúng ta xác định rằng các tập kết quả không thể có nhiều hơn 3 hàng Hàm tổng hợp – Aggregate Functions (AS) Trong phần trước chúng ta đã học cách viết các truy vấn để truy hồi thông tin từ cơ sở dữ liệu Trong phần này chúng ta sẽ học cách để thực... hàng trong một bảng là sử dụng hàm COUNT() Hàm COUNT() là một hàm xem tên một cột như một tham số và đếm số lượng hàng của cột không phải NULL Ở đây ta muốn đếm từng hàng vì vậy ta truyền ‘*’ như một tham số Group By AS thường được hữu ích khi chúng ta tổ chức dữ liệu thành nhóm Group By là một mệnh đề trong SQL mà chỉ được sử dụng với AS Nó được sử dụng phối hợp với lệnh SELECT để sắp xếp dữ liệu giống... và chúng ta truyền price như là một tham số đến Group By SQL sẽ tính toán tổng số ứng dụng cho một giá trong bảng Nó thường hữu ích để SELECT cột bạn truyền qua như một tham số đến Group By Ở đây, chúng ta chọn price và COUNT(*) Ta có thể thấy rằng các tập kết quả được tổ chức thành hai cột, nên rất dễ dàng để xem số lượng ứng dụng tại mỗi mức giá Sum Trong SQL, rất dễ dàng để để tính tổng tất cả các... mà không làm tròn Ta có thể thiết lập để kết quả dễ đọc hơn bằng cách sử dụng hàm ROUND() Hàm này sử dụng tên cột và một số nguyên như một đối số Nó làm tròn giá trị trong cột với số thập phân theo quy định của số nguyên Ở chúng ta làm tròn AVG(downloads) với 2 chữ số thập phân SQL đầu tiên tính giá trị downloads trung bình sau đó làm tròn kết quả ... trong cột Average Lệnh này trả về trung bình số lượng tải xuống của một ứng dụng trong cơ sở dữ liệu SQL sử dụng hàm AVG() để tính toán nhanh chóng giá trị trung bình của một cột cụ thể Hàm AVG() làm việc bằng cách sử dụng tên cột như một tham số và trả về giá trị trung bình của cột Round Mặc định, SQL cố gắng để có được các giá trị càng chính xác càng tốt mà không làm tròn Ta có thể thiết lập để kết... dụng SQL AS tính toán một kết quả duy nhất từ tập kết quả đầu vào Ví dụ, ta cần tổng hoặc trung bình cộng của một cột, chúng ta có thể sử dụng AS để tính toán nhanh chóng kết quả cho chúng ta Chúng ta sẽ học về nhữn AS khác nhau trong phần này Trong phần này, chúng ta sẽ thao tác trên một bảng có tên là fake_apps được tạo thành từ dữ liệu của ứng dụng di động fake Count Cách tốt nhất để tính toán số. .. bất kì tên phim nào có chứa từ ‘man’ sẽ được trả về trong tập kết quả Chú ý rằng, LIKE không phân biệt chữ hoa thường, Cả ‘Batman’ và ‘Man Of Steel’ đều xuất hiện trong tập kết quả BETWEEN Toán tử BETWEEN được sử dụng để lọc tập kết quả trong một miền chắc chắn Giá trị có thể là số, text hoặc ngày Lệnh này lộc tập kết quả chỉ bao gồm những tên phim giữa chữ cái ‘A’ đến nhưng không bao gồm chữ cái ‘J’... thể sử dụng SUM() SUM() là hàm sử dụng tên của cột như một tham số và trả về tổng tất cả giá trị trong một cột Ở đây nó tính tổng tất cả các giá trị trong cột downloads Max Ta có thể tính giá trị lớn nhất trong một cột sử dụng MAX() MAX() là hàm sử dụng tên cột như một tham số và trả về giá trị lớn nhất trong cột Ở đây, ta truyền vào tham số downloads vì vậy nó sẽ trả về giá trị lớn nhất trong cột này

Ngày đăng: 27/07/2016, 12:20

TỪ KHÓA LIÊN QUAN

w