SQL trong Data Analysis: Nhập môn SQL cơ bản

Nội dung

Xin chào các bạn, ở bài Data Analysis với SQL – Phần 1: Mở đầu, chúng ta đã học làm quen và cài đặt cho mình các bộ dữ liệu và các công cụ phù hợp. Ở phần này chúng ta sẽ nhập môn SQL cơ bản.

I. Giới thiệu SQL cơ bản

SQL (Structured Query Language) là một ngôn ngữ được sử dụng để truy vấn và quản lý trong cơ sở dữ liệu quan hệ (RDBMS) như PostgreSQL. SQL được sử dụng rộng rãi trong các ứng dụng web và phần mềm để truy vấn và lưu trữ dữ liệu.

Ngoài ra, SQL còn được sử dụng ở các lĩnh vực liên quan tới data, vì tính dễ dàng tiếp cận của nó, cũng như khả năng tính toán và truy xuất dữ liệu ở dạng bảng.

Ở bài này chúng ta sẽ nói sơ qua về việc sử dụng SQL vào lĩnh vực dữ liệu ở mức thực thi các câu lệnh truy vấn ở mức cơ bản.

SQL trong Data Analysis: Nhập môn SQL cơ bản 101
SQL là gì

II. Các từ khoá cơ bản

Từ khóa SELECT & FROM

Truy vấn SELECT là truy vấn phổ biến nhất trong SQL, được sử dụng để truy vấn dữ liệu từ các bảng trong cơ sở dữ liệu. Truy vấn SELECT cho phép lựa chọn các cột cần truy vấn và thêm điều kiện để truy vấn dữ liệu chính xác.

Các từ khóa chính trong truy vấn SELECT bao gồm: SELECT, FROM và WHERE. SELECT được sử dụng để lựa chọn các cột cần truy vấn. FROM được sử dụng để chỉ định các bảng chứa dữ liệu cần truy vấn. WHERE được sử dụng để thêm điều kiện để lọc dữ liệu.

SQL
select * from "brazilian-ecommerce".olist_customers_dataset;

Kết quả

SQL trong Data Analysis: Nhập môn SQL cơ bản 101: SELECT * FROM

Từ khóa WHERE

Truy vấn WHERE được sử dụng để lọc dữ liệu dựa trên các điều kiện được xác định. Truy vấn này cho phép lựa chọn các dòng (rows) theo các tiêu chí như giá trị của một trường cụ thể hoặc kết hợp nhiều tiêu chí để lọc dữ liệu.

Các toán tử so sánh trong truy vấn WHERE bao gồm: “=”, “<>”, “<“, “<=”, “>”, “>=”, “LIKE” và “IN”. “LIKE” được sử dụng để tìm kiếm các dòng có giá trị tương tự hoặc chứa chuỗi con. “IN” được sử dụng để tìm kiếm các dòng có giá trị trong danh sách được chỉ định.

SQL
select * from "brazilian-ecommerce".olist_customers_dataset
where customer_state = 'SP';

Kết quả

SQL trong Data Analysis: Nhập môn SQL cơ bản 101: WHERE

Từ khóa JOIN

Từ khóa JOIN được sử dụng để kết hợp dữ liệu từ nhiều bảng. Nó cho phép lấy dữ liệu từ các bảng liên quan với nhau thông qua khóa chính, khóa ngoại.

Các loại JOIN trong SQL bao gồm: INNER JOIN, LEFT JOIN, RIGHT JOIN và FULL OUTER JOIN. INNER JOIN trả về các dòng có giá trị khớp trong cả hai bảng. LEFT JOIN trả về tất cả các dòng trong bảng bên trái và các dòng khớp trong bảng bên phải. RIGHT JOIN tương tự với LEFT JOIN nhưng đổi chỗ bảng. FULL OUTER JOIN trả về tất cả các dòng trong cả hai bảng.

SQL
select c.customer_id, o.order_id  from "brazilian-ecommerce".olist_customers_dataset c
join "brazilian-ecommerce".olist_orders_dataset o on c.customer_id = o.customer_id;

Kết quả, chúng đã JOIN hai bảng dữ liệu customer và order làm một:

SQL trong Data Analysis: Nhập môn SQL cơ bản 101: JOIN

Từ khóa GROUP BY

Từ khóa GROUP BY được sử dụng để nhóm các dòng dựa trên giá trị của một trường cụ thể. Nó cho phép tính tổng, trung bình, số lượng hoặc giá trị lớn nhất/lớn nhất của các dòng trong mỗi nhóm.

SQL
select customer_city, count(*) as count from "brazilian-ecommerce".olist_customers_dataset group by customer_city;

Kết quả: chúng ta nhóm customer_city, và đếm số lượng customer thuộc về city đó.

SQL trong Data Analysis: Nhập môn SQL cơ bản 101: GROUP BY

Từ khóa HAVING

Từ khóa HAVING được sử dụng để lọc kết quả của từ khóa GROUP BY. Nó cho phép người dùng chỉ định một điều kiện để lọc các bản ghi đã được nhóm.

SQL
select customer_city, count(*) from "brazilian-ecommerce".olist_customers_dataset 
group by customer_city having count(*) > 10;

Câu lệnh trên sẽ lấy tất cả các thành phố có trên 10 khách hàng trong thành phố đó:

SQL trong Data Analysis: Nhập môn SQL cơ bản 101: HAVING

Từ khóa ORDER BY

Từ khóa ORDER BY được sử dụng để sắp xếp các dòng theo giá trị của một hoặc nhiều trường. Nó cho phép sắp xếp các dòng theo thứ tự tăng dần (ASC) hoặc giảm dần (DESC).

SQL
select customer_city, count(*) from "brazilian-ecommerce".olist_customers_dataset 
group by customer_city  having count(*) > 10 order by 2 desc; 
--You can change desc keyword to asc to sort from lowest to higest

Tiếp tục ví dụ trên, chúng ta mong muốn sắp xếp top các thành phố có ít nhất hơn 10 khách hàng và được sắp xếp từ cao tới thấp.

SQL trong Data Analysis: Nhập môn SQL cơ bản 101: ORDER BY

Kết luận

Các từ khóa SQL kể trên được sử dụng thường xuyên gần như mỗi ngày của các nhân sự trong lĩnh vực data lẫn software.

Bằng cách sử dụng các truy vấn phù hợp, người dùng có thể truy vấn dữ liệu hiệu quả và nhanh chóng. Khi sử dụng SQL, bạn cần phải hiểu rõ các khái niệm và cú pháp để tránh sai sót trong truy vấn dữ liệu.

Bài viết liên quan

SQL trong Data Analysis: Procedure và Function – 2 công cụ không thể thiếu

Xin chào các bạn đã quay trở lại chuỗi bài SQL trong Data Analysis...

Tự học Data Analyst: Tổng hợp chuỗi bài SQL 101 trong Data Analysis

Trong bài viết này, chúng ta sẽ tổng hợp các bài viết thành một...

SQL trong Data Analysis: Hiểu rõ và ứng dụng đệ quy (Recursive trong PostgreSQL)

Trong thế giới của cơ sở dữ liệu quan hệ, các truy vấn đệ...

[Phân Tích Dữ Liệu Với Python] Tập 1: Làm Quen Với Pandas

Trong thời đại tiến bộ của khoa học dữ liệu, khả năng phân tích...
spot_img