1. 结构化查询语言SQL
SQL
是结构化查询语言,是一种专门用来与数据库通信的语言,SQL
语句不区分大小写,但是根据惯例,SQL
关键字使用大写,列和表名使用小写
2. SQL
语言的组成
数据定义语言(DDL):针对数据库与数据库对象
- CREATE:新建
- ALTER:修改
- DROP:删除
数据操纵语言(DML):针对数据库对象
- SELECT:查
- INSERT:增
- UPDATE:改
- DELETE:删
数据控制语言(DCL):针对用户,用于安全管理
- GRANT:授予权限
- REVOKE:收回权限
其他扩展的语言要素:如内置函数
3. Mysql函数
聚合函数
结果值只选择数据中的非NULL值进行计算,NULL值被忽略
- COUNT():计数
- SUM():求和
- AVG():取平均
- MAX():求最大值
- MIN():求最小值
数学函数
- ABS(x):求绝对值
- FLOOR(x):求小于等于x的整数
- RAND():求(0,1)之间的随机数
- TRUNCATE(x,y):返回x保留到小数点后y位的值
- SQRT(x):对x开平方
字符串函数
- UPPER(s)、UCASE(s):将s转换为大写
- LEFT(x,n):返回字符串x前n项
- SUBSTRING(s,n,len):返回字符串s从第n个位置开始长度为len的字符串。
日期与时间函数
- 返回当前日期:CURDATE()、CURRENT_DATE()
- 返回当前时间:CURTIME()、CURRENT_TIME()
- 返回当前日期与时间:NOW()、CURRENT_TIMESTAMP()、LOCALTIME()
//返回当前日期
mysql> SELECT CURDATE();
+------------+
| CURDATE() |
+------------+
| 2022-03-05 |
+------------+
1 row in set (0.00 sec)
//返回当前时间
mysql> SELECT CURTIME();
+-----------+
| CURTIME() |
+-----------+
| 21:06:42 |
+-----------+
1 row in set (0.00 sec)
//返回当前时间与日期
mysql> SELECT NOW();
+---------------------+
| NOW() |
+---------------------+
| 2022-03-05 21:08:02 |
+---------------------+
1 row in set (0.00 sec)
其他函数
- IF(expr,v1,v2):expr为真,返回v1,否则返回v2
- IFNULL(v1,v2):如果v1不为空,则返回v1,否则返回v2
- VERSION():查看当前Mysql的版本号