SQL ROUND 函数
一、SQL ROUND 函数 语法
SQL ROUND 函数将指定的数字四舍五入到特定的小数位。
SELECT ROUND(Number, Decimal_places, Operation) AS Alias_Name;
在此 ROUND 函数中,以下是三个参数:
- Number:要四舍五入的十进制数
- Decimal_places:可以是正整数或负整数,表示要四舍五入的小数位数。
- Operation:可选。
在SQL语言中,我们还可以对表的整数列使用 ROUND 函数,如下块所示:
SELECT ROUND(Column_Name, Decimal_places, Operation) AS Alias_Name FROM Table_Name;
在这种语法中,我们将 ROUND 函数与现有的 SQL 表一起使用。在这里,我们必须定义要在其上执行 ROUND 函数的表的名称和列。
二、SQL ROUND 函数 示例
示例 1:以下舍入函数将数字舍入到 -1 位小数:
SELECT ROUND(945.451) AS Round_-1value;
输出结果为:
Round_-1Value |
---|
950.00 |
示例 2:以下舍入函数将数字舍入到小数点后 2 位,第三个参数非零:
SELECT ROUND(145.415) AS Round_-1value;
输出结果为:
Round_-1Value |
---|
145.41 |
示例 3:此示例对 SQL 表使用数学 ROUND 函数:
在第三个示例中,我们将创建一个新表,我们将通过该表对表的整数列执行 ROUND 函数:
下面显示了在 SQL 中创建新表的语法:
CREATE TABLE Name_of_New_Table
(
First_Column_of_table Data Type (character_size of First Column),
Second_Column_of_table Data Type (character_size of the Second column ),
Third_Column_of_table Data Type (character_size of the Third column),
......,
Last_Column_of_table Data Type (character_size of the Last column)
);
以下 CREATE 语句创建Product_Details表以存储产品的价格和数量:
CREATE TABLE Product_Details
(
Product_ID INT NOT NULL,
Product_Name Varchar(50),
Product_Quantity INT,
Purchasing_Price INT,
Selling_Price INT,
Release_Date Date,
Product_Rating INT
);
以下多个 INSERT 语句将产品记录及其销售和购买价格插入到 Product_Details 表中:
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (104, P1, 10.250, 945.2548, 1050.2547, 2022-04-30, 8);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (202, P4, 15.500, 45.248, 75.5725, 2022-01-28, 5);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (103, P2, 18.250, 255.248, 475.725, 2022-02-18, 4);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (111, P7, 25.250, 5.958, 15.955, 2021-12-25, 9);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (210, P6, 12.650, 50.958, 70.955, 2021-10-15, 11);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (212, P8, 19.750, 110.850, 250.955, 2022-01-10, 3);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (112, P10, 24.950, 550.654, 835.657, 2022-04-11, 8);
以下 SELECT 语句显示上述Product_Details表的插入记录:
SELECT * FROM Product_Details;
输出结果为:
Product_ID | Product_Name | Product_Quantity | Purchasing_Price | Selling_Price | Release_Date | Product_Rating |
---|---|---|---|---|---|---|
104 | P1 | 10.250 | 945.2548 | 1050.2547 | 2022-04-30 | 8 |
202 | P4 | 15.500 | 45.248 | 75.5725 | 2022-01-28 | 5 |
103 | P2 | 18.250 | 255.248 | 475.725 | 2022-02-18 | 4 |
111 | P7 | 25.250 | 5.958 | 15.955 | 2021-12-25 | 9 |
210 | P6 | 12.650 | 50.958 | 70.955 | 2021-10-15 | 11 |
212 | P8 | 19.750 | 110.850 | 250.955 | 2022-01-10 | 3 |
112 | P10 | 24.950 | 550.654 | 835.657 | 2022-04-11 | 8 |
查询 1:以下 SELECT 查询将 ROUND 函数与上述 Product_Details 表的 Product_Quantity 列一起使用:
SELECT Product_ID, Product_Name, Product_Quantity, ROUND(Product_Quantity, -1) AS Round_-1quantity FROM Product_Details;
输出结果为:
Product_ID | Product_Name | Product_Quantity | Round_-1quantity |
---|---|---|---|
104 | P1 | 10.250 | 10.000 |
202 | P4 | 15.500 | 20.000 |
103 | P2 | 18.250 | 20.000 |
111 | P7 | 25.250 | 30.000 |
210 | P6 | 12.650 | 10.000 |
212 | P8 | 19.750 | 20.000 |
112 | P10 | 24.950 | 20.000 |
查询 2:以下 SELECT 查询对上述 Product_Details 表中 Product_ID 大于 103 的产品的 Purchasing_Price 和 Selling_Price 列使用 ROUND 函数:
SELECT Product_ID, Purchasing_Price, ROUND(Purchasing_Price, 2, 0) AS Round_2purchase, Selling_Price, ROUND( Selling_Price, 2, 0) AS Round_2selling FROM Product_Details WHERE Product_ID > 103;
输出结果为:
Product_ID | Purchasing_Price | Round_2purcahse | Selling_Price | Round_2Sellling |
---|---|---|---|---|
104 | 945.2548 | 945.2500 | 1050.2547 | 1050.2500 |
202 | 45.248 | 45.250 | 75.5725 | 75.5700 |
111 | 5.958 | 5.960 | 15.955 | 15.960 |
210 | 50.958 | 50.960 | 70.955 | 70.960 |
212 | 110.850 | 110.850 | 250.955 | 250.960 |
112 | 550.654 | 550.650 | 835.657 | 835.660 |
查询 3:以下 SELECT 查询将 ROUND 函数与上述 Product_Details 表的 Product_Quantity 列一起使用:
SELECT Product_ID, Product_Quantity, ROUND(Product_Quantity, 1, 1) AS Round_1_1quantity FROM Product_Details;
此函数使用非零值,即 1 round 轮函数中的第三个参数。
输出结果为:
Product_ID | Product_Quantity | Round_1_1quantity |
---|---|---|
104 | 10.250 | 10.200 |
202 | 15.500 | 15.500 |
103 | 18.250 | 18.200 |
111 | 25.250 | 25.200 |
210 | 12.650 | 12.600 |
212 | 19.750 | 19.700 |
112 | 24.950 | 24.900 |
热门文章
优秀文章