首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql 查看有哪些函数

MySQL 提供了丰富的函数库,用于执行各种操作。以下是一些常见的 MySQL 函数类型及其应用场景:

1. 字符串函数

  • CONCAT(str1, str2, ...): 连接多个字符串。
  • LENGTH(str): 返回字符串的长度。
  • UPPER(str): 将字符串转换为大写。
  • LOWER(str): 将字符串转换为小写。

示例代码:

代码语言:txt
复制
SELECT CONCAT('Hello', ' ', 'World'); -- 输出: Hello World
SELECT LENGTH('Hello World'); -- 输出: 11
SELECT UPPER('Hello World'); -- 输出: HELLO WORLD
SELECT LOWER('Hello World'); -- 输出: hello world

2. 数值函数

  • ABS(num): 返回数字的绝对值。
  • ROUND(num, dec): 四舍五入到指定的小数位数。
  • CEILING(num): 返回大于或等于给定数字的最小整数。
  • FLOOR(num): 返回小于或等于给定数字的最大整数。

示例代码:

代码语言:txt
复制
SELECT ABS(-10); -- 输出: 10
SELECT ROUND(3.14159, 2); -- 输出: 3.14
SELECT CEILING(3.14); -- 输出: 4
SELECT FLOOR(3.14); -- 输出: 3

3. 日期和时间函数

  • NOW(): 返回当前的日期和时间。
  • CURDATE(): 返回当前的日期。
  • CURTIME(): 返回当前的时间。
  • DATE_ADD(date, INTERVAL expr unit): 在日期上增加指定的时间间隔。

示例代码:

代码语言:txt
复制
SELECT NOW(); -- 输出: 当前日期和时间
SELECT CURDATE(); -- 输出: 当前日期
SELECT CURTIME(); -- 输出: 当前时间
SELECT DATE_ADD('2023-10-01', INTERVAL 1 MONTH); -- 输出: 2023-11-01

4. 聚合函数

  • COUNT()*: 返回表中的行数。
  • SUM(column): 返回指定列的总和。
  • AVG(column): 返回指定列的平均值。
  • MAX(column): 返回指定列的最大值。
  • MIN(column): 返回指定列的最小值。

示例代码:

代码语言:txt
复制
SELECT COUNT(*) FROM users; -- 输出: 表中用户总数
SELECT SUM(age) FROM users; -- 输出: 用户年龄总和
SELECT AVG(age) FROM users; -- 输出: 用户平均年龄
SELECT MAX(age) FROM users; -- 输出: 用户最大年龄
SELECT MIN(age) FROM users; -- 输出: 用户最小年龄

5. 控制流函数

  • IF(condition, value_if_true, value_if_false): 根据条件返回不同的值。
  • CASE WHEN ... THEN ... ELSE ... END: 类似于编程语言中的 switch 语句。

示例代码:

代码语言:txt
复制
SELECT IF(1 = 1, 'True', 'False'); -- 输出: True
SELECT CASE WHEN age > 18 THEN 'Adult' ELSE 'Minor' END AS status FROM users;
-- 输出: 根据年龄判断用户是否成年

6. 系统信息函数

  • DATABASE(): 返回当前数据库的名称。
  • USER(): 返回当前用户的名称。

示例代码:

代码语言:txt
复制
SELECT DATABASE(); -- 输出: 当前数据库名称
SELECT USER(); -- 输出: 当前用户名称

遇到的问题及解决方法

问题: 查询结果中的字符串函数没有正确处理特殊字符。

原因: 可能是因为特殊字符没有被正确转义。

解决方法: 使用 REPLACE()CONCAT() 函数来处理特殊字符。

示例代码:

代码语言:txt
复制
SELECT REPLACE('Hello, World!', ',', ' '); -- 输出: Hello World!

参考链接

希望这些信息对你有所帮助!

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • MySQL日志

    本文先来讲讲慢日志。 1. 是什么? MySQL日志是一种记录执行很慢的sql的日志。...MySQL中可以通过long_query_time来设置一个阀值,如果执行时间超过这个阀值,就会被认为是慢sql,就会记录到慢日志中。该阀值默认是10s,即执行超过10s的sql就会被记录。 2....开启方法: MySQL默认是没有开启慢日志的,如果不是调优需要的话,不建议开启,因为这个也会带来性能的影响。...也就是超过3s的sql到底有没有被记录到慢日志中呢?...执行结果 日志分析工具:mysqldumpslow 生产环境可能会出现很多的慢日志,如果都要手工分析,也是比较费时的,MySQL提供了慢日志分析工具,mysqldumpslow。

    92210

    MySQL漏补缺

    漏补缺 目录 MySQL漏补缺 唯一索引比普通索引快吗, 为什么 MySQL哪些部分组成, 分别用来做什么 MySQL查询缓存有什么弊端, 应该什么情况下使用, 8.0版本对查询缓存有什么变更....MyISAM和InnoDB的区别有哪些 MySQL怎么恢复半个月前的数据 MySQL事务的隔离级别, 分别有什么特点 做过哪些MySQL索引相关优化 简要说一下数据库范式 一千万条数据的表, 如何分页查询...订单表数据量越来越大导致查询缓慢, 如何处理 欢迎关注公众号(代码如诗) 推荐阅读 十个MySQL知识点(面试题), 漏补缺, 共同学习, 欢迎交流....MySQL哪些部分组成, 分别用来做什么 Server 连接器: 管理连接, 权限验证. 分析器: 词法分析, 语法分析. 优化器: 执行计划生成, 索引的选择....做过哪些MySQL索引相关优化 尽量使用主键查询: 聚簇索引上存储了全部数据, 相比普通索引查询, 减少了回表的消耗.

    2.3K20

    MySQL增删改语句_MySQL comment

    今天说一说MySQL增删改语句_MySQL comment,希望能够帮助大家进步!!!...1.前言 mysql慢查询,已经有现成的成熟的方案收集展示了:pt-query-digest结合box公司的anemometer,没用过的移步:《mysql慢查询可视化》(本章内容需要提前了解anemometer...但DBA们一定还遇到过这样的问题:某个时间段CPU负载较高,但慢却没有。这种情况一般是由高并发的但单个性能正常的SQL导致的,所以慢没有,但总体负载会升高。 那怎么办呢?...2.功能展示 选择时间段、host(沿用的慢中的名称,理解为mysql实例): 展示每个digest的总次数、最高执行频率(按分钟)、平均耗时(毫秒) 点击checksum,查看某个SQL执行频率的走势图...3.2.表结构 global_query_review、global_query_review_history直接沿用慢的表结构,字段不变; db_instance实:例配置表,记录实例的信息,python

    3.3K60

    什么是并集?有哪些应用?

    什么是并集 并集可以看作是一个数据结构,如果你根本没有听说过这个数据结构,那么你第一眼看到 “并集” 这三个字的时候,脑海里会浮现一个什么样的数据结构呢?...好了,现在你应该知道并集是什么,以及它能干什么了,总结下来就是: 并集可以进行集合合并的操作(并) 并集可以查找元素在哪个集合中() 并集维护的是一堆集合(集) 知道了这些后,并集的概念就清楚了...优化 - 路径压缩 我们可以分析一下上面的代码的时间复杂度,上面的两个函数操作都是基于数组的,其中 union 操作又是依赖于 find 的,因此 find 操作的时间复杂度等同于并集操作的时间复杂度...find 函数优化后就会是: public int find(int element) { if (root[element] == element) { return element...并集可以用来解决什么问题 并集往往用于解决图上的问题,并集只有两个操作,“并” 和 “”,但是通过这两个操作可以派生出一些其他的应用: 图的连通性问题 集合的个数 集合中元素的个数 图的连通性很好理解

    4.6K21

    MySQL 8.0 OCP 漏补缺 -配置MySQL

    最近在考MySQL 8.0的OCP ,开个专题专门漏补缺下 只是做备忘,有的概念只是一笔带过,具体可自行搜索 本文中配置和选项文件一个意思 1.配置文件优先级 ?...相关defaults选项 --no-defaults会忽略配置文件的参数,只会按预编译时的参数以及命令行启动时的参数 mysqld --no-defaults --basedir=/opt/mysql...--datadir=/mysql/data --user=mysql --pid-file=/mysql/pid --socket=/mysql/socket --port=3307 --defaults-file...配置文件组 配置文件组即配置文件中[group-name]下面的选项 他主要用于将配置文件中的参数分组,方便管理客户端程序读取参数 通过如下命令可以知道程序运行时读取了哪些参数 mysqld --help...再加上一个 show-warnings 可以执行如下命令查看配置文件组内容 my_print_defaults mysql client mysql --print-defaults mysql client

    4K20

    MySQLMySQL表的增删改(初阶)

    MySQL表的增删改(基础) 据库最主要的操作就是增(create)删(update)改(retrieve)(delete)。(CURD) 注意:进行增删改操作的时候,请务必选中数据库。...创建数据库,如果手动指定字符集了,以手动指定的为准,如果没有手动指定,此时就会读取MySQL的配置文件(my.ini),配置文件里面也会写一个字符集。...在MySQL中,当前一次插入一条记录,分10次插入,效率要远低于一次把10个记录一起插入。因为MySQL是一个“客户端服务器”结构的程序。 原因: 由于网络请求和响应的时间开销引起的。...先把数据库中保存的数据,进行查询,的时候,每次得到一行,就带入到条件中。 加入or就可以带上空值了。很多sql字句都是可以相互组合的。 这里是两个列进行比较。...比如: 这取决于mysql内部的实现。mysql里执行查询操作的时候,现针对每一行记录,计算条件,并按照条件筛选。满足条件的记录,才会取出对应的列。

    3.5K20
    领券