Hàm phần trăm cho DB2

Phần mềm quản lý cơ sở dữ liệu DB2 của IBM sử dụng Ngôn ngữ truy vấn có cấu trúc, hoặc SQL, để tạo và quản lý các cấu trúc cơ sở dữ liệu cũng như cập nhật thông tin trong đó. SQL là một ngôn ngữ lập trình tiêu chuẩn công nghiệp bao gồm các hàm toán học để thực hiện các phân tích chi tiết về dữ liệu cơ sở dữ liệu. Sử dụng SQL, bạn có thể dễ dàng tính toán tỷ lệ phần trăm cho mỗi bản ghi của bảng cơ sở dữ liệu, cho các nhóm bản ghi và cho tổng bảng.

Tuyên bố CHỌN

DB2’s SQL sử dụng câu lệnh SELECT để tạo báo cáo từ thông tin cơ sở dữ liệu. Cú pháp cơ bản của câu lệnh là từ SELECT theo sau là danh sách các trường, tên bảng và các mệnh đề tùy chọn như WHERE và ORDER BY để kiểm tra và sắp xếp dữ liệu. Các trường có thể đến trực tiếp từ một bảng hoặc chúng có thể được tính toán các giá trị dựa trên các trường của bảng. Ví dụ: bạn có thể liệt kê nội dung của bảng đơn đặt hàng, bao gồm mã sản phẩm, mô tả, giá cả và số lượng và bạn có thể nhân giá với số lượng để lấy tổng.

Phân chia đơn giản

Dạng phần trăm đơn giản nhất trong câu lệnh SELECT trong DB2 nhân một trường với 100, sau đó chia cho tổng để thu được phần trăm. Ví dụ: SQL sau liệt kê tên khách hàng, đơn đặt hàng, tổng số mặt hàng và tỷ lệ phần trăm của tổng số đơn đặt hàng:

CHỌN tên, số lượng đơn hàng, tổng số mục, tổng số hàng * 100 / tổng số đơn hàng NHƯ tỷ lệ phần trăm FROM order_table;

Nếu bạn tính toán tỷ lệ phần trăm dựa trên các trường số nguyên, nhân mục đầu tiên với 100 đảm bảo rằng phép chia tiếp theo sẽ trả về một tỷ lệ phần trăm có ý nghĩa. Thay vào đó, nếu bạn chia một số nguyên cho một số nguyên lớn hơn và nhân kết quả với 100, SQL sẽ trả về số không.

Hàm thập phân

Phiên bản SQL của DB2 có một hàm toán học được gọi là DECIMAL. Sử dụng nó với hàm phần trăm, DECIMAL cho phép bạn kiểm soát số lượng vị trí thập phân của kết quả. Câu lệnh SQL SELECT sau đây minh họa việc sử dụng DECIMAL trong các phép tính phần trăm:

SELECT tên, order_number, DECIMAL (item_total, item_total * 100,0 / order_total, 5,2) AS phần trăm, order_total FROM order_table;

Hàm DECIMAL có ba đối số: số hoặc giá trị được tính toán, số chữ số cho độ chính xác và số chữ số sau số thập phân. Ở đây, độ chính xác là năm và số chữ số sau số thập phân là hai. Câu lệnh SELECT này tạo ra một tỷ lệ phần trăm dưới dạng một số có tổng năm chữ số và hai chữ số thập phân, chẳng hạn như 56,05 hoặc 199,10.

Chức năng do người dùng xác định

Đối với các phép tính phức tạp, được sử dụng thường xuyên dẫn đến tỷ lệ phần trăm, hãy cân nhắc sử dụng UDF hoặc Hàm do người dùng xác định. DB2 lưu trữ một UDF như một đối tượng, vì vậy nó trở thành một phần của cơ sở dữ liệu cùng với các trường, bảng và các đối tượng khác. Câu lệnh CREATE FUNCTION, theo sau là các câu lệnh SQL khác, viết một mục nhập hàm trong cơ sở dữ liệu. Thay vì lặp lại các phép tính phức tạp trong câu lệnh SELECT, bạn có thể tham khảo hàm, giúp việc lập trình của bạn trở nên đơn giản và đáng tin cậy hơn.