MySQL函数查询表
在SQL语言中,MySQL提供了丰富的函数来处理数据库中的数据,包括条件判断、转换与编码、字符串操作等。这里我们将详细探讨这些知识点。 我们来看`CASE`语句,它是SQL中的一个条件判断表达式。它允许根据不同的条件返回不同的结果。`CASE`有两种形式:简单`CASE`和搜索`CASE`。 1. 简单`CASE`表达式(a): ```sql CASE value WHEN compare-value THEN result [WHEN compare-value THEN result] [ELSE result] END ``` 这个结构会检查`value`是否等于`compare-value`,如果匹配则返回`result`。如果没有匹配项或`value`为`NULL`,则返回`ELSE`后的结果,如果没有`ELSE`部分,则默认为`NULL`。 2. 搜索`CASE`表达式(b): ```sql CASE WHEN condition THEN result [WHEN condition THEN result] [ELSE result] END ``` 这种形式下,`WHEN`后面的`condition`被评估,如果满足条件则返回相应的`result`。所有条件都不满足时,返回`ELSE`后的结果。 接下来是`IF`函数(b),它类似于`CASE`的简化版,用于简单的二元逻辑判断。 ```sql IF(expr1,expr2,expr3) ``` 如果`expr1`为`TRUE`(非零且非`NULL`),则返回`expr2`;否则,返回`expr3`。 `IFNULL`函数(c)用于处理`NULL`值: ```sql IFNULL(expr1,expr2) ``` 如果`expr1`为`NULL`,则返回`expr2`,否则返回`expr1`。 字符处理函数包括: 1. `ASCII(str)`(a):返回字符串`str`的第一个字符的ASCII码。如果`str`为空或者`NULL`,则返回`NULL`。 2. `BIN(N)`(b):将数字`N`转换为二进制字符串。`N`必须为`LONGLONG`类型,如果`N`为`NULL`,结果也为`NULL`。 3. `CHAR(N[, ...][USING charset])`(c):创建包含指定字符的字符串。`N`表示字符的ASCII码或Unicode值。如果参数无效或`NULL`,则结果为`NULL`。 4. `CHAR_LENGTH(str)`(d)和`CHARACTER_LENGTH(str)`(f):这两个函数都返回字符串`str`的长度,以字符数计。两者在处理多字节字符集时的行为相同。 5. `COMPRESS(string_to_compress)`(g):压缩`string_to_compress`,返回压缩后的二进制字符串。如果压缩失败或输入为空,结果为`NULL`。可以使用`UNCOMPRESS()`来解压。 6. `CONCAT(str1, str2, ...)`(g):将多个字符串连接成一个字符串。如果有任何参数为`NULL`,整个结果也将为`NULL`。 这些函数极大地丰富了MySQL在数据处理和分析时的能力,使得SQL语言更加灵活和强大。通过熟练掌握这些函数,我们可以更高效地进行数据查询和操作。
- zcgggg012014-07-22虽然没有帮到我,不过感谢分享。
- fang000922013-03-18资料还可以,不过不算太好吧
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助