SQL 中的标量函数2024年8月29日 | 阅读 10 分钟 我们可以对存储在 SQL 数据库中的数据执行各种操作。这可以通过 SQL 提供的内置函数来完成。标量函数是 SQL 中的内置函数,无论输入到标量函数中的是什么,这些函数返回的输出始终是一个单一的值。 在 SQL 中,标量函数独立地操作每个记录。 SQL 中一些常用的标量函数包括:
让我们通过示例更详细地了解它们。我们将使用 MySQL 数据库编写所有查询。 假设我们有一个包含以下记录的 customers 表:
1. UCASE()
将字符串转换为大写的语法 或 将存储在表列中的字符串转换为大写的语法 SELECT UCASE (ColumnName) FROM TableName; 示例 1在这里,UCASE() 函数以字符串 'Welcome to Javatpoint' 作为参数,在 SELECT 查询中使用,以大写形式打印字符串。'Upper_Case_String' 是一个别名。 您将得到以下输出
'WELCOME TO JAVATPOINT' 是传递给 UCASE() 函数的参数的大写字符串。因此,它会显示为输出。 示例 2在这里,'Address' 列以 UCASE() 函数作为参数,在 SELECT 查询中使用,以大写形式打印地址列的值。'Upper_Case_String' 是一个别名。 您将得到以下输出
ID、Name、Age 和 salary 列的所有列值都按原样显示。Address 列中的列值以大写形式显示。 2. LCASE()
将字符串转换为小写的语法 或 将存储在表列中的字符串转换为小写的语法 示例 1 在这里,LCASE() 函数以字符串 'WELCOME TO JAVATPOINT' 作为参数,在 SELECT 查询中使用,以小写形式打印字符串。'LowerCase_String' 是一个别名。 您将得到以下输出
'welcome to javatpoint' 是传递给 LCASE() 函数的参数的小写字符串。因此,它会显示为输出。 示例 2在这里,'Name' 列以 LCASE() 函数作为参数,在 SELECT 查询中使用,以小写形式打印 'Name' 列的值。'NameLowerCase' 是一个别名。 您将得到以下输出
ID、Age、Address 和 salary 列的所有列值都按原样显示。'Name' 列中的列值以小写形式显示。 3. MID()
提取子字符串的语法 其中, String:包含我们要从中提取字符串特定部分的整个字符串。 Starting index:起始索引中的整数值决定了字符串中的字符是从字符串的开头还是结尾提取。 Length:长度字段中的整数值告诉我们要从字符串中提取的字符数。如果未指定长度,则将提取整个字符串。 注意:Length 是一个可选参数或 从表列中提取子字符串的语法 示例 1在这里,MID() 函数带有三个参数:'Welcome to the world of databases', 16, 18,作为参数传递给 SELECT 查询,以打印从索引 16 开始并包含 18 个字符的子字符串。'Substring' 是一个别名。 您将得到以下输出
'World of databases' 是传递给 MID() 函数的参数的子字符串。因此,它会显示为输出。 示例 2在这里,MID() 函数带有三个参数:Name, 3, 5,作为参数传递给 SELECT 查询,以打印从索引 3 开始并包含 5 个字符的子字符串。' NameSubstring ' 是一个别名。 您将得到以下输出
ID、Age、Address 和 salary 列的所有列值都按原样显示。只有从索引 3 开始、包含 5 个字符的子字符串在 'Name' 列中显示。 4. LENGTH()
查找字符串长度的语法 或 从表列查找字符串长度的语法 示例 1mysql> SELECT LENGTH ("Welcome to the world of databases") AS LengthOfString; 在这里,LENGTH() 函数以字符串 'Welcome to the world of databases' 作为参数,在 SELECT 查询中使用,以打印字符串的长度。'LengthOfString' 是一个别名。 您将得到以下输出
'33' 是传递给 LENGTH() 函数的参数的字符串长度。因此,它会显示为输出。 示例 2在这里,'Name' 列以 LENGTH() 函数作为参数,在 SELECT 查询中使用,以打印 'Name' 列的值的长度。'LengthOfName' 是一个别名。 您将得到以下输出
ID、Age、Address 和 salary 列的所有列值都按原样显示。在 'Name' 列中,仅显示字符串的长度。 5. ROUND()ROUND() 函数用于将数字列四舍五入到指定的精度。 四舍五入数值的语法 其中, Decimal 表示要获取的小数位数。 或 从表列中四舍五入数值的语法 示例 1在这里,ROUND() 函数带有两个包含数值 18000.44444、2 的不同参数,在 SELECT 查询中使用,以打印给定数字的四舍五入值。由于第二个参数为 2,第一个参数中的数字将四舍五入到小数点后两位。' RoundedValue ' 是一个别名。 您将得到以下输出
'18000.44' 是传递给 ROUND() 函数的参数的四舍五入值。因此,它会显示为输出。 示例 2在这里,ROUND() 函数带有两个包含数值 18000.44444、0 的不同参数,在 SELECT 查询中使用,以打印给定数字的四舍五入值。由于第二个参数为 0,第一个参数中的数字将四舍五入到小数点后零位。' RoundedValue ' 是一个别名。 您将得到以下输出
'18000' 是传递给 ROUND() 函数的参数的四舍五入值。因此,它会显示为输出。 示例 3mysql> SELECT ROUND (18000.44444, 3) AS RoundedValue; 在这里,ROUND() 函数带有两个包含数值 18000.44444、3 的不同参数,在 SELECT 查询中使用,以打印给定数字的四舍五入值。由于第二个参数为 3,第一个参数中的数字将四舍五入到小数点后三位。' RoundedValue ' 是一个别名。 您将得到以下输出
'18000.444' 是传递给 ROUND() 函数的参数的四舍五入值。因此,它会显示为输出。 6. NOW()
查找当前日期和时间的语法 或 从表列查找当前日期和时间的语法 示例 1NOW() 函数在 SELECT 查询中使用,以打印当前的系统日期和时间。'CurrentDatenTime' 是一个别名。 您将得到以下输出
'2021-09-13 10:38:24' 是系统的当前日期和时间。因此,它会显示为输出。 示例 2在这里,NOW() 函数在 SELECT 查询中使用,以在表列中打印当前的系统日期和时间。'DatenTime' 是一个别名。 您将得到以下输出
ID、Name、Age、Address 和 salary 列的所有列值都按原样显示。在 'DatenTime' 列中,显示当前的系统日期和时间。 7. FORMAT()
格式化值的语法 或 格式化表列中值的语法 SELECT FORMAT (ColumnName, Decimal) FROM TableName; 示例 1FORMAT() 函数带有两个包含数值 6789.6789、2 的不同参数,在 SELECT 查询中使用,以打印四舍五入后的格式化值。由于第二个参数为 2,第一个参数中的数字将四舍五入到小数点后两位。'Formatted_Number' 是一个别名。 您将得到以下输出
'6,789.68' 是传递给 FORMAT() 函数的参数的格式化值。因此,它会显示为输出。 示例 2ROUND() 函数带有两个包含 'Salary' / 0.5、2 的不同参数,在 SELECT 查询中使用,以打印格式化值。此格式化值将在对 'Salary' 列中的值除以 2 后获得。此外,由于第二个参数为 2,将工资除以 0.5 得到的值将四舍五入到小数点后两位。'FormattedSalary' 是一个别名。 您将得到以下输出
ID、Name、Age 和 Address 列的所有列值都按原样显示。在 'FormattedSalary' 列中,显示格式化的工资值。 下一个主题SQL 中的 SET 运算符 |
我们请求您订阅我们的新闻通讯以获取最新更新。