删除十进制值的 SQL 查询
十进制值是那些将“float”作为数据类型的值。
有多种方法可以删除 SQL 中的十进制值:
- 使用 ROUND()函数:SQL Server 中的此函数用于将指定的数字四舍五入到指定的小数位
- 使用 FLOOR()函数:它返回小于或等于数字的最大整数值。
- 使用 CAST()函数:必须在 SQL Server 中使用Cast或Convert函数完成显式转换。
第 1 步:创建数据库
使用以下 SQL 语句创建名为 geeks 的数据库:
询问:
CREATE DATABASE geeks;
第 2 步:使用数据库
使用以下 SQL 语句将数据库上下文切换到 geeks:
询问:
USE geeks;
第 3 步:表定义
我们的 geek 数据库中有以下 geeks for geeks 表。
询问:
CREATE TABLE geeksforgeeks(
NAME VARCHAR(10),
MARKS float);
第 4 步:向表中插入数据
询问:
INSERT INTO geeksforgeeks VALUES ('ROMY',80.9),('MEENAKSHI',86.89),('SHALINI',85.9),('SAMBHAVI', 89.45);
第 5 步:检查表的值
可以使用 SELECT 命令查看表的内容。
询问:
SELECT * FROM geeksforgeeks;
第 6 步:使用函数删除十进制值
通过使用 Round()函数
- ROUND():该函数将数字四舍五入到指定的小数位。如果我们想删除所有的十进制值,我们会将其四舍五入到小数位 0。
句法:
ROUND(Value, decimal_place)
询问:
SELECT NAME, ROUND(MARKS,0) AS MARKS FROM geeksforgeeks;
输出:
80.0 四舍五入为 81,因为 81 是最接近的整数值。
通过使用FLOOR()函数
- FLOOR():该函数返回小于或等于用作参数的值的最大整数值。
句法:
FLOOR(value)
询问:
SELECT NAME, FLOOR(MARKS) AS MARKS FROM geeksforgeeks;
输出:
在这里,80.9 被转换为 80,因为 FLOOR() 返回一个小于或等于给定值的值,但不能返回大于给定值的值。
通过使用 CAST()函数
- CAST():该函数用于将值转换为特定的数据类型。
句法:
CAST( value as datatype)
询问:
SELECT NAME, CAST(MARKS as INT) AS MARKS FROM geeksforgeeks;
输出:
这给出了类似于 FLOOR()函数。根据所使用的函数,结果略有不同。应根据需要进行选择。