SQLite
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> SQLite

Chọn SQLite

Tóm tắt :trong hướng dẫn này, bạn sẽ học cách sử dụng SQLite SELECT để truy vấn dữ liệu từ một bảng.

SELECT câu lệnh là một trong những câu lệnh được sử dụng phổ biến nhất trong SQL. SQLite SELECT câu lệnh cung cấp tất cả các tính năng của SELECT câu lệnh trong chuẩn SQL.

Cách sử dụng đơn giản của SELECT tuyên bố

Bạn có thể sử dụng SELECT để thực hiện một phép tính đơn giản như sau:

SELECT	1 + 1;Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Bạn có thể sử dụng nhiều biểu thức trong SELECT tuyên bố như sau:

SELECT 
   10 / 5, 
   2 * 4 ;Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Truy vấn dữ liệu từ bảng bằng SELECT tuyên bố

Chúng tôi thường sử dụng SELECT câu lệnh để truy vấn dữ liệu từ một hoặc nhiều bảng. Cú pháp của SELECT như sau:

SELECT DISTINCT column_list
FROM table_list
  JOIN table ON join_condition
WHERE row_filter
ORDER BY column
LIMIT count OFFSET offset
GROUP BY column
HAVING group_filter;Code language: SQL (Structured Query Language) (sql)

SELECT câu lệnh là câu lệnh phức tạp nhất trong SQLite. Để giúp dễ hiểu hơn từng phần, chúng tôi sẽ ngắt SELECT tuyên bố thành nhiều hướng dẫn dễ hiểu.

  • Sử dụng mệnh đề ORDER BY để sắp xếp tập hợp kết quả
  • Sử dụng mệnh đề DISTINCT để truy vấn các hàng duy nhất trong bảng
  • Sử dụng mệnh đề WHERE để lọc các hàng trong tập kết quả
  • Sử dụng mệnh đề LIMIT OFFSET để hạn chế số lượng hàng được trả về
  • Sử dụng INNER JOIN hoặc LEFT JOIN để truy vấn dữ liệu từ nhiều bảng bằng phép nối.
  • Sử dụng GROUP BY để sắp xếp các hàng trong nhóm và áp dụng hàm tổng hợp cho từng nhóm.
  • Sử dụng mệnh đề HAVING để lọc các nhóm

Trong hướng dẫn này, chúng ta sẽ tập trung vào dạng đơn giản nhất của SELECT câu lệnh cho phép bạn truy vấn dữ liệu từ một bảng.

SELECT column_list
FROM table;Code language: SQL (Structured Query Language) (sql)

Mặc dù SELECT mệnh đề xuất hiện trước FROM mệnh đề, SQLite đánh giá FROM trước rồi đến mệnh đề SELECT , do đó:

  • Đầu tiên, hãy chỉ định bảng mà bạn muốn lấy dữ liệu từ trong FROM mệnh đề. Lưu ý rằng bạn có thể có nhiều hơn một bảng trong FROM mệnh đề. Chúng ta sẽ thảo luận về vấn đề này trong phần hướng dẫn tiếp theo.
  • Thứ hai, chỉ định một cột hoặc danh sách các cột được phân tách bằng dấu phẩy trong SELECT mệnh đề.

Bạn sử dụng dấu chấm phẩy (;) để kết thúc câu lệnh.

SQLite SELECT ví dụ

Hãy cùng xem qua tracks trong cơ sở dữ liệu mẫu.

tracks bảng chứa các cột và hàng. Nó trông giống như một bảng tính.

Để lấy dữ liệu từ bảng bản nhạc, chẳng hạn như trackid, tên bản nhạc, nhà soạn nhạc và đơn giá, bạn sử dụng câu lệnh sau:

SELECT
	trackid,
	name,
	composer,
	unitprice
FROM
	tracks;Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Bạn chỉ định tên cột danh sách, mà bạn muốn lấy dữ liệu, trong SELECT mệnh đề và tracks trong FROM mệnh đề. SQLite trả về kết quả sau:

Để lấy dữ liệu từ tất cả các cột, bạn chỉ định các cột của tracks trong SELECT mệnh đề như sau:

SELECT
	trackid,
	name,
	albumid,
	mediatypeid,
	genreid,
	composer,
	milliseconds,
	bytes,
	unitprice
FROM
	tracks;Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Đối với một bảng có nhiều cột, truy vấn sẽ dài đến mức mất nhiều thời gian để nhập. Để tránh điều này, bạn có thể sử dụng dấu hoa thị (*), là cách viết tắt cho tất cả các cột của bảng như sau:

SELECT * FROM tracks;Code language: SQL (Structured Query Language) (sql)

Hãy thử nó

Truy vấn bây giờ ngắn hơn và rõ ràng hơn.

Tuy nhiên…

Bạn chỉ nên sử dụng dấu hoa thị (*) cho mục đích thử nghiệm, không phải để phát triển ứng dụng thực.

Bởi vì…

Khi bạn phát triển một ứng dụng, bạn nên kiểm soát những gì SQLite trả về cho ứng dụng của bạn. Giả sử, một bảng có 3 cột và bạn sử dụng dấu hoa thị (*) để truy xuất dữ liệu từ cả ba cột.

Điều gì sẽ xảy ra nếu ai đó xóa một cột, ứng dụng của bạn sẽ không hoạt động bình thường, vì nó giả định rằng có ba cột được trả về và logic để xử lý ba cột đó sẽ bị hỏng.

Nếu ai đó thêm nhiều cột hơn, ứng dụng của bạn có thể hoạt động nhưng nhận được nhiều dữ liệu hơn mức cần thiết, điều này tạo ra nhiều I / O hơn giữa cơ sở dữ liệu và ứng dụng.

Vì vậy, hãy cố gắng tránh sử dụng dấu hoa thị (*) như một thói quen tốt khi bạn sử dụng SELECT tuyên bố.

Trong hướng dẫn này, bạn đã học cách sử dụng một dạng đơn giản của SQLite SELECT để truy vấn dữ liệu từ một bảng.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Android:Lỗi Sqlite - (1) near null:lỗi cú pháp

  2. Ngoại lệ SQLite trong khi cố gắng xóa hàng

  3. Có nên có một SQLiteOpenHelper cho mỗi bảng trong cơ sở dữ liệu không?

  4. Thêm một cột vào một bảng hiện có trong SQLite

  5. Cơ sở dữ liệu sẽ không bị xóa khi gỡ cài đặt Ứng dụng Android