SQL特点:
- SQL是综合的而且易学的语言,只有少量的关键字,每一个SQL语句都是关键字组成的,目的就是能够有效读写。
- SQL不是特定数据库的专有语言,几乎所有的数据库系统都支持SQL。
- SQL简单但是可以进行非常复杂和高级的数据库操作。
SQL组成:
- 数据定义语言(data definition language,DDL)
- 数据操纵语言(data manipulation language,DML)
- 数据控制语言 (data control language,DCL)
- 嵌入式和动态SQL规则
- SQL调用和会话规则
SQL函数列表官方文档地址:SQL FUNC
基本函数列表:
名字 | 描述 |
---|
ABS() | 返回绝对值 |
ACOS() | 返回弧余弦 |
ADDDATE() | 将时间值(间隔)添加到日期值 |
ADDTIME() | 加时 |
AES_DECRYPT() | 用AES解密 |
AES_ENCRYPT() | 使用AES加密 |
AND , && | 逻辑与 |
ANY_VALUE() | 仅通过值拒绝抑制完整组 |
ASCII() | 返回最左边字符的数值 |
ASIN() | 回弧正弦 |
= | 赋值(作为SET 语句,或作为SET 从句UPDATE 声明) |
:= | 赋值 |
ASYMMETRIC_DECRYPT() | 使用私钥或公钥解密密文 |
ASYMMETRIC_DERIVE() | 从非对称密钥导出对称密钥 |
ASYMMETRIC_ENCRYPT() | 使用私钥或公钥加密明文 |
ASYMMETRIC_SIGN() | 从摘要生成签名 |
ASYMMETRIC_VERIFY() | 验证签名是否匹配摘要 |
ATAN() | 返回弧切线 |
ATAN2() , ATAN() | 返回两个参数的弧切线 |
AVG() | 返回参数的平均值 |
BENCHMARK() | 重复执行表达式 |
BETWEEN ... AND ... | 检查一个值是否在值的范围内。 |
BIN() | 返回包含数字的二进制表示形式的字符串。 |
BIN_TO_UUID() | 将二进制UUID转换为字符串 |
BINARY | 将字符串转换为二进制字符串 |
BIT_AND() | 按位返回 |
BIT_COUNT() | 返回设置的位数。 |
BIT_LENGTH() | 参数的返回长度(以位为单位) |
BIT_OR() | 按位返回或 |
BIT_XOR() | 按位返回XOR |
& | 按位和 |
~ | 位反演 |
| | 按位或 |
^ | 位异或 |
CAN_ACCESS_COLUMN() | 仅限于内部使用 |
CAN_ACCESS_DATABASE() | 仅限于内部使用 |
CAN_ACCESS_TABLE() | 仅限于内部使用 |
CAN_ACCESS_VIEW() | 仅限于内部使用 |
CASE | 案例算子 |
CAST() | 将某一价值作为某种类型 |
CEIL() | 返回不小于参数的最小整数值。 |
CEILING() | 返回不小于参数的最小整数值。 |
CHAR() | 返回传递的每个整数的字符 |
CHAR_LENGTH() | 返回参数中的字符数 |
CHARACTER_LENGTH() | Char_Length()的同义词 |
CHARSET() | 返回参数的字符集 |
COALESCE() | 返回第一个非空参数。 |
COERCIBILITY() | 返回字符串参数的排序规则矫顽力值。 |
COLLATION() | 返回字符串参数的排序规则。 |
COMPRESS() | 以二进制字符串的形式返回结果 |
CONCAT() | 返回连接字符串 |
CONCAT_WS() | 用分离器返回级联 |
CONNECTION_ID() | 返回连接的连接ID(线程ID) |
CONV() | 不同数基间的转换数 |
CONVERT() | 将某一价值作为某种类型 |
CONVERT_TZ() | 从一个时区转换到另一个时区 |
COS() | 返回余弦 |
COT() | 返回余切 |
COUNT() | 返回的行数的计数。 |
COUNT(DISTINCT) | 返回许多不同值的计数。 |
CRC32() | 计算循环冗余校验值 |
CREATE_ASYMMETRIC_PRIV_KEY() | 创建私钥 |
CREATE_ASYMMETRIC_PUB_KEY() | 创建公钥 |
CREATE_DH_PARAMETERS() | 生成共享DH秘密 |
CREATE_DIGEST() | 从字符串生成摘要 |
CUME_DIST() | 累积分布值 |
CURDATE() | 返回当前日期 |
CURRENT_DATE() , CURRENT_DATE | CURDATE()的同义词 |
CURRENT_ROLE() | 返回当前活动角色 |
CURRENT_TIME() , CURRENT_TIME | CURTIME()的同义词 |
CURRENT_TIMESTAMP() , CURRENT_TIMESTAMP | 现在的同义词() |
CURRENT_USER() , CURRENT_USER | 已验证的用户名和主机名。 |
CURTIME() | 返回当前时间 |
DATABASE() | 返回默认(当前)数据库名称 |
DATE() | 提取日期或日期时间表达式的日期部分。 |
DATE_ADD() | 将时间值(间隔)添加到日期值 |
DATE_FORMAT() | 指定格式日期 |
DATE_SUB() | 从日期减去时间值(间隔) |
DATEDIFF() | 减去两个日期 |
DAY() | DAYOFMONTH()的同义词 |
DAYNAME() | 返回工作日的名称 |
DAYOFMONTH() | 返回月份的日期(0-31) |
DAYOFWEEK() | 返回参数的工作日索引 |
DAYOFYEAR() | 交还一年中的一天(1-366) |
DECODE() | 解码使用ENCODE()加密的字符串 |
DEFAULT() | 返回表列的默认值 |
DEGREES() | 将弧度转换为度 |
DENSE_RANK() | 当前行在其分区内的秩,没有间隙 |
DES_DECRYPT() | 解密字符串 |
DES_ENCRYPT() | 加密字符串 |
DIV | 整数除法 |
/ | 除法算子 |
ELT() | 在索引号处返回字符串 |
ENCODE() | 编码字符串 |
ENCRYPT() | 加密字符串 |
= | 等算子 |
<=> | 空安全等于运算符 |
EXP() | 提高到.的力量 |
EXPORT_SET() | 返回一个字符串,以便对于值位中的每一个位,您得到一个ON字符串,对于每个未设置的位,您得到一个OFF字符串。 |
EXTRACT() | 提取日期的一部分 |
ExtractValue() | 使用XPath表示法从xml字符串中提取值 |
FIELD() | 后继参数中第一个参数的索引(位置) |
FIND_IN_SET() | 第二个参数中第一个参数的索引(位置) |
FIRST_VALUE() | 窗口框架第一行参数的值 |
FLOOR() | 返回不大于参数的最大整数值。 |
FORMAT() | 返回格式化为指定小数位数的数字。 |
FORMAT_BYTES() | 用单位将字节计数转换为值 |
FORMAT_PICO_TIME() | 用单位将时间(以皮秒为单位)转换为值 |
FOUND_ROWS() | 对于SELECT WITE子句,如果没有限制子句,则返回的行数。 |
FROM_BASE64() | 解码Base 64编码的字符串并返回结果 |
FROM_DAYS() | 将日号转换为日期 |
FROM_UNIXTIME() | 将Unix时间戳格式化为日期 |
GeomCollection() | 从几何构造几何集合 |
GeometryCollection() | 从几何构造几何集合 |
GET_DD_COLUMN_PRIVILEGES() | 仅限于内部使用 |
GET_DD_CREATE_OPTIONS() | 仅限于内部使用 |
GET_DD_INDEX_SUB_PART_LENGTH() | 仅限于内部使用 |
GET_FORMAT() | 返回日期格式字符串 |
GET_LOCK() | 得到一个指定的锁 |
> | 大于运算符 |
>= | 大于或等于运算符 |
GREATEST() | 返回最大的参数 |
GROUP_CONCAT() | 返回连接字符串 |
GROUPING() | 区分超级聚合汇总行和常规行 |
GTID_SUBSET() | 如果子集中的所有GTID也在SET中,则返回true;否则为false。 |
GTID_SUBTRACT() | 返回集合中不位于子集中的所有GTID。 |
HEX() | 十进制或字符串值的十六进制表示 |
HOUR() | 抽出时间 |
ICU_VERSION() | ICU库版本 |
IF() | IF/Else构造 |
IFNULL() | 空if/Else构造 |
IN() | 检查一个值是否在一组值中。 |
INET_ATON() | 返回IP地址的数值 |
INET_NTOA() | 从数值返回IP地址 |
INET6_ATON() | 返回IPv 6地址的数值。 |
INET6_NTOA() | 从数值返回IPv 6地址 |
INSERT() | 在指定位置插入不超过指定字符数的子字符串 |
INSTR() | 返回子字符串第一次出现的索引。 |
INTERNAL_AUTO_INCREMENT() | 仅限于内部使用 |
INTERNAL_AVG_ROW_LENGTH() | 仅限于内部使用 |
INTERNAL_CHECK_TIME() | 仅限于内部使用 |
INTERNAL_CHECKSUM() | 仅限于内部使用 |
INTERNAL_DATA_FREE() | 仅限于内部使用 |
INTERNAL_DATA_LENGTH() | 仅限于内部使用 |
INTERNAL_DD_CHAR_LENGTH() | 仅限于内部使用 |
INTERNAL_GET_COMMENT_OR_ERROR() | 仅限于内部使用 |
INTERNAL_GET_VIEW_WARNING_OR_ERROR() | 仅限于内部使用 |
INTERNAL_INDEX_COLUMN_CARDINALITY() | 仅限于内部使用 |
INTERNAL_INDEX_LENGTH() | 仅限于内部使用 |
INTERNAL_KEYS_DISABLED() | 仅限于内部使用 |
INTERNAL_MAX_DATA_LENGTH() | 仅限于内部使用 |
INTERNAL_TABLE_ROWS() | 仅限于内部使用 |
INTERNAL_UPDATE_TIME() | 仅限于内部使用 |
INTERVAL() | 返回小于第一个参数的索引。 |
IS | 对布尔值进行测试 |
IS_FREE_LOCK() | 指定的锁是否空闲? |
IS_IPV4() | 参数是否为ipv 4地址 |
IS_IPV4_COMPAT() | 参数是否为与ipv 4兼容的地址。 |
IS_IPV4_MAPPED() | 参数是否为ipv 4映射的地址。 |
IS_IPV6() | 参数是否为IPv 6地址 |
IS NOT | 对布尔值进行测试 |
IS NOT NULL | 非零值检验 |
IS NULL | 零值检验 |
IS_USED_LOCK() | 是否正在使用命名锁;如果为真,则返回连接标识符。 |
IS_UUID() | 参数是否为有效的UUID |
ISNULL() | 测试参数是否为空 |
JSON_ARRAY() | 创建JSON数组 |
JSON_ARRAY_APPEND() | 将数据附加到JSON文档 |
JSON_ARRAY_INSERT() | 插入JSON数组 |
JSON_ARRAYAGG() | 将结果集作为单个JSON数组返回 |
-> | 在计算PATH之后,从JSON列返回值;等效于JSON_EXCTION()。 |
JSON_CONTAINS() | JSON文档是否包含路径上的特定对象 |
JSON_CONTAINS_PATH() | JSON文档是否包含路径上的任何数据 |
JSON_DEPTH() | JSON文档的最大深度 |
JSON_EXTRACT() | 从JSON文档返回数据 |
->> | 在计算PATH并取消引用结果之后,从JSON列返回值;等效于JSON_UNQUERE(JSON_EXCTION()。 |
JSON_INSERT() | 将数据插入JSON文档 |
JSON_KEYS() | JSON文档中的键数组 |
JSON_LENGTH() | JSON文档中的元素数 |
JSON_MERGE() (反对8.0.3) | 合并JSON文档,保留重复的键。JSON_Merge_PREPRE()的弃用同义词 |
JSON_MERGE_PATCH() | 合并JSON文档,替换重复键的值 |
JSON_MERGE_PRESERVE() | 合并JSON文档,保留重复键 |
JSON_OBJECT() | 创建JSON对象 |
JSON_OBJECTAGG() | 将结果集作为单个JSON对象返回 |
JSON_PRETTY() | 以人类可读的格式打印JSON文档 |
JSON_QUOTE() | 引用JSON文档 |
JSON_REMOVE() | 从JSON文档中删除数据 |
JSON_REPLACE() | 替换JSON文档中的值 |
JSON_SEARCH() | JSON文档中的值路径 |
JSON_SET() | 将数据插入JSON文档 |
JSON_STORAGE_FREE() | 部分更新后JSON列值的二进制表示中释放的空间 |
JSON_STORAGE_SIZE() | 用于存储JSON文档二进制表示的空间 |
JSON_TABLE() | 将JSON表达式中的数据作为关系表返回 |
JSON_TYPE() | JSON值类型 |
JSON_UNQUOTE() | 取消引用JSON值 |
JSON_VALID() | JSON值是否有效 |
LAG() | 分区内行滞后当前行的参数值 |
LAST_DAY | 返回这个月的最后一天进行辩论。 |
LAST_INSERT_ID() | 最后一次插入的AUTOINCREMENT列的值 |
LAST_VALUE() | 窗口框最后一行的参数值 |
LCASE() | lower()的同义词 |
LEAD() | 分区中当前行中的行引号参数的值。 |
LEAST() | 返回最小的参数 |
LEFT() | 返回指定的最左边字符数 |
<< | 左移 |
LENGTH() | 返回字符串的长度(以字节为单位)。 |
< | 小于算子 |
<= | 小于或相等算子 |
LIKE | 简单模式匹配 |
LineString() | 从点值构造列串 |
LN() | 返回参数的自然对数 |
LOAD_FILE() | 加载命名文件 |
LOCALTIME() , LOCALTIME | 现在同义词() |
LOCALTIMESTAMP , LOCALTIMESTAMP() | 现在同义词() |
LOCATE() | 返回子字符串第一次出现的位置。 |
LOG() | 返回第一个参数的自然对数 |
LOG10() | 返回参数的基数-10对数。 |
LOG2() | 返回参数的基-2对数。 |
LOWER() | 返回小写的参数 |
LPAD() | 返回字符串参数,左填充指定的字符串。 |
LTRIM() | 移除前导空间 |
MAKE_SET() | 返回一组以逗号分隔的字符串,这些字符串在位集中具有相应的位。 |
MAKEDATE() | 创建一年中的一年和一天的日期 |
MAKETIME() | 从小时、分钟、秒开始创造时间 |
MASTER_POS_WAIT() | 块,直到从服务器读取并应用到指定位置的所有更新为止。 |
MATCH | 执行全文搜索 |
MAX() | 返回最大值 |
MBRContains() | 一个几何的MBR是否包含另一个几何的MBR |
MBRCoveredBy() | 一个MBR是否被另一个MBR覆盖 |
MBRCovers() | 一个MBR是否包括另一个MBR |
MBRDisjoint() | 两个几何图形的MBR是否不相交 |
MBREquals() | 两个几何图形的MBR是否相等 |
MBRIntersects() | 两个几何的MBR是否相交 |
MBROverlaps() | 两个几何图形的MBR是否重叠 |
MBRTouches() | 两个几何图形的MBR是否接触 |
MBRWithin() | 一个几何的MBR是否在另一个几何的MBR内 |
MD5() | 计算MD5校验和 |
MICROSECOND() | 从参数返回微秒 |
MID() | 返回从指定位置开始的子字符串。 |
MIN() | 返回最小值 |
- | 负算子 |
MINUTE() | 从辩论中返回一分钟 |
MOD() | 返回余数 |
% , MOD | 模算子 |
MONTH() | 交还已过日期后的月份。 |
MONTHNAME() | 返回月份名称 |
MultiLineString() | 从LineString值构造多重LineString |
MultiPoint() | 从点值构造多点 |
MultiPolygon() | 从多边形值构造多边形 |
NAME_CONST() | 使列具有给定的名称 |
NOT , ! | 否定价值 |
NOT BETWEEN ... AND ... | 检查某个值是否不在值的范围内。 |
!= , <> | 不相等算子 |
NOT IN() | 检查某个值是否不在一组值中。 |
NOT LIKE | 简单模式匹配的否定 |
NOT REGEXP | REGEXP的否定 |
NOW() | 返回当前日期和时间 |
NTH_VALUE() | 窗口第N行参数的取值 |
NTILE() | 其分区内当前行的桶号。 |
NULLIF() | 如果expr1=expr2返回NULL |
OCT() | 返回包含数字八进制表示的字符串。 |
OCTET_LENGTH() | 长度()的同义词 |
OR , || | 逻辑OR |
ORD() | 返回参数最左边字符的字符代码 |
PASSWORD() | 计算并返回密码字符串 |
PERCENT_RANK() | 百分比秩值 |
PERIOD_ADD() | 将一个期间加到一年的一个月中。 |
PERIOD_DIFF() | 返回期间之间的月数。 |
PI() | 返回pi的值 |
+ | 加法算子 |
Point() | 从坐标构造点 |
Polygon() | 从LineString参数构造多边形 |
POSITION() | find()的同义词 |
POW() | 将引发的参数返回到指定的电源 |
POWER() | 将引发的参数返回到指定的电源 |
PS_CURRENT_THREAD_ID() | 当前线程的性能架构线程ID |
PS_THREAD_ID() | 给定线程的性能架构线程ID |
QUARTER() | 从日期参数返回季度 |
QUOTE() | 转义在sql语句中使用的参数 |
RADIANS() | 返回参数转换为弧度 |
RAND() | 返回一个随机浮点值。 |
RANDOM_BYTES() | 返回随机字节向量 |
RANK() | 在其分区内的当前行的等级,并有空白处。 |
REGEXP | 字符串是否匹配正则表达式 |
REGEXP_INSTR() | 匹配正则表达式的子字符串启动索引 |
REGEXP_LIKE() | 字符串是否匹配正则表达式 |
REGEXP_REPLACE() | 替换匹配正则表达式的子字符串 |
REGEXP_SUBSTR() | 返回匹配正则表达式的子字符串 |
RELEASE_ALL_LOCKS() | 释放所有当前命名锁 |
RELEASE_LOCK() | 释放指定的锁 |
REPEAT() | 重复指定次数的字符串 |
REPLACE() | 替换指定字符串的出现 |
REVERSE() | 反转字符串中的字符 |
RIGHT() | 返回指定的最右边字符数。 |
>> | 右移 |
RLIKE | 字符串是否匹配正则表达式 |
ROLES_GRAPHML() | 返回表示内存角色子图的GraphML文档 |
ROUND() | 绕过争论 |
ROW_COUNT() | 更新的行数。 |
ROW_NUMBER() | 其分区内的当前行数 |
RPAD() | 追加指定次数的字符串 |
RTRIM() | 移除尾随空间 |
SCHEMA() | 数据库()的同义词 |
SEC_TO_TIME() | 将秒转换为“hh:mm:ss”格式 |
SECOND() | 返回第二个(0-59) |
SESSION_USER() | user()的同义词 |
SHA1() , SHA() | 计算sha-1 160位校验和 |
SHA2() | 计算sha-2校验和 |
SIGN() | 返回论点的符号 |
SIN() | 返回参数的正弦 |
SLEEP() | 睡几秒钟 |
SOUNDEX() | 返回Soundex字符串 |
SOUNDS LIKE | 比较音 |
SPACE() | 返回指定空格数的字符串。 |
SQRT() | 返回参数的平方根 |
ST_Area() | 返回多边形或多边形区域 |
ST_AsBinary() , ST_AsWKB() | 从内部几何格式转换为WKB |
ST_AsGeoJSON() | 从几何图形生成GeoJSON对象 |
ST_AsText() , ST_AsWKT() | 从内部几何格式转换为Wkt |
ST_Buffer() | 在给定距离内返回点的几何形状 |
ST_Buffer_Strategy() | 生成ST_Buffer()的策略选项 |
ST_Centroid() | 返回质心为点 |
ST_Contains() | 一个几何学是否包含另一个几何学 |
ST_ConvexHull() | 返回几何凸壳 |
ST_Crosses() | 一个几何是否与另一个几何学交叉 |
ST_Difference() | 两个几何图形的返回点集差 |
ST_Dimension() | 几何尺寸 |
ST_Disjoint() | 一种几何是否与另一种不相交 |
ST_Distance() | 一个几何学与另一个几何学的距离 |
ST_Distance_Sphere() | 地球上两个几何之间的最小距离 |
ST_EndPoint() | 绳串终点 |
ST_Envelope() | 几何返回MBR |
ST_Equals() | 一种几何学是否等于另一种几何学 |
ST_ExteriorRing() | 多边形回归外环 |
ST_GeoHash() | 生成地理哈希值 |
ST_GeomCollFromText() , ST_GeometryCollectionFromText() , ST_GeomCollFromTxt() | 从Wkt返回几何集合 |
ST_GeomCollFromWKB() , ST_GeometryCollectionFromWKB() | 从WKB返回几何集合 |
ST_GeometryN() | 从几何集合返回N次几何 |
ST_GeometryType() | 返回几何类型名称 |
ST_GeomFromGeoJSON() | 从GeoJSON对象生成几何学 |
ST_GeomFromText() , ST_GeometryFromText() | 从Wkt返回几何 |
ST_GeomFromWKB() , ST_GeometryFromWKB() | 从WKB返回几何 |
ST_InteriorRingN() | 多边形的第N个内环 |
ST_Intersection() | 两个几何图形的返回点集相交 |
ST_Intersects() | 一种几何是否与另一种几何相交 |
ST_IsClosed() | 几何是否是封闭的和简单的 |
ST_IsEmpty() | 占位符函数 |
ST_IsSimple() | 几何是否简单 |
ST_IsValid() | 几何是否有效 |
ST_LatFromGeoHash() | 从地理哈希值返回纬度 |
ST_Latitude() | 返回点纬度 |
ST_Length() | 回程长度 |
ST_LineFromText() , ST_LineStringFromText() | 从Wkt构造LineString |
ST_LineFromWKB() , ST_LineStringFromWKB() | 从WKB构造LineString |
ST_LongFromGeoHash() | 从地哈希值返回经度 |
ST_Longitude() | 返回点经度 |
ST_MakeEnvelope() | 两点周围矩形 |
ST_MLineFromText() , ST_MultiLineStringFromText() | 从Wkt构造多列串 |
ST_MLineFromWKB() , ST_MultiLineStringFromWKB() | 从WKB构造多列字符串 |
ST_MPointFromText() , ST_MultiPointFromText() | 从Wkt构造多点 |
ST_MPointFromWKB() , ST_MultiPointFromWKB() | 从WKB构造多点 |
ST_MPolyFromText() , ST_MultiPolygonFromText() | 用Wkt构造多边形 |
ST_MPolyFromWKB() , ST_MultiPolygonFromWKB() | 从WKB构造多边形 |
ST_NumGeometries() | 几何集合中几何图形的返回数 |
ST_NumInteriorRing() , ST_NumInteriorRings() | 多边形内环的返回数 |
ST_NumPoints() | LineString中的返回点数 |
ST_Overlaps() | 一个几何学与另一个几何学重叠 |
ST_PointFromGeoHash() | 将地理哈希值转换为点值 |
ST_PointFromText() | Wkt构造点 |
ST_PointFromWKB() | 从WKB构造点 |
ST_PointN() | 从LineString返回N点 |
ST_PolyFromText() , ST_PolygonFromText() | 用Wkt构造多边形 |
ST_PolyFromWKB() , ST_PolygonFromWKB() | 从WKB构造多边形 |
ST_Simplify() | 返回简化几何 |
ST_SRID() | 返回几何空间参考系统ID |
ST_StartPoint() | 绳串起点 |
ST_SwapXY() | 交换X/Y坐标的返回参数 |
ST_SymDifference() | 两个几何图形的返回点集对称差 |
ST_Touches() | 一个几何图形是否触及另一个几何图形 |
ST_Transform() | 几何变换坐标 |
ST_Union() | 两个几何图形的返回点集并 |
ST_Validate() | 返回验证几何 |
ST_Within() | 一个几何学是否在另一个几何学中 |
ST_X() | 返回点的X坐标 |
ST_Y() | 返回点的Y坐标 |
STATEMENT_DIGEST() | 计算语句摘要散列值 |
STATEMENT_DIGEST_TEXT() | 计算规范化语句摘要 |
STD() | 返回总体标准差 |
STDDEV() | 返回总体标准差 |
STDDEV_POP() | 返回总体标准差 |
STDDEV_SAMP() | 返回样品标准差 |
STR_TO_DATE() | 将字符串转换为日期 |
STRCMP() | 比较两个字符串 |
SUBDATE() | 使用三个参数调用Date_sub()的同义词 |
SUBSTR() | 返回指定的子字符串 |
SUBSTRING() | 返回指定的子字符串 |
SUBSTRING_INDEX() | 在分隔符出现的指定次数之前,从字符串返回子字符串。 |
SUBTIME() | 减除次数 |
SUM() | 还和 |
SYSDATE() | 返回函数执行的时间。 |
SYSTEM_USER() | user()的同义词 |
TAN() | 返回参数的切线 |
TIME() | 提取传递的表达式的时间部分。 |
TIME_FORMAT() | 格式如时间 |
TIME_TO_SEC() | 返回转换为秒的参数 |
TIMEDIFF() | 减时 |
* | 乘法算子 |
TIMESTAMP() | 对于单个参数,该函数返回日期或日期时间表达式;对于两个参数,返回参数的和。 |
TIMESTAMPADD() | 向日期时间表达式添加间隔 |
TIMESTAMPDIFF() | 从日期时间表达式中减去间隔 |
TO_BASE64() | 返回转换为基-64字符串的参数。 |
TO_DAYS() | 返回转换为天的日期参数。 |
TO_SECONDS() | 返回从0开始转换为秒的日期或日期时间参数。 |
TRIM() | 拆卸前导和尾随空间 |
TRUNCATE() | 截断到指定的小数位数 |
UCASE() | 上()的同义词 |
- | 更改论点的符号 |
UNCOMPRESS() | 解压缩的字符串 |
UNCOMPRESSED_LENGTH() | 压缩前返回字符串的长度 |
UNHEX() | 返回包含数字十六进制表示的字符串。 |
UNIX_TIMESTAMP() | 返回Unix时间戳 |
UpdateXML() | 返回替换的XML片段 |
UPPER() | 转换为大写 |
USER() | 客户端提供的用户名和主机名。 |
UTC_DATE() | 返回当前的UTC日期 |
UTC_TIME() | 返回当前的UTC时间 |
UTC_TIMESTAMP() | 返回当前的UTC日期和时间。 |
UUID() | 返回通用唯一标识符(UUID) |
UUID_SHORT() | 返回整数值通用标识符。 |
UUID_TO_BIN() | 将字符串UUID转换为二进制 |
VALIDATE_PASSWORD_STRENGTH() | 确定密码的强度 |
VALUES() | 定义插入期间使用的值 |
VAR_POP() | 返回总体标准方差 |
VAR_SAMP() | 返回样本方差 |
VARIANCE() | 返回总体标准方差 |
VERSION() | 返回指示MySQL服务器版本的字符串。 |
WAIT_FOR_EXECUTED_GTID_SET() | 等待到给定的GTID在从服务器上执行。 |
WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS() | 等待到给定的GTID在从服务器上执行。 |
WEEK() | 返回周号 |
WEEKDAY() | 返回工作日索引 |
WEEKOFYEAR() | 返回日期的日历周(1-53) |
WEIGHT_STRING() | 返回字符串的权重字符串 |
XOR | 逻辑异或 |
YEAR() | 退年 |
YEARWEEK() | 归还年度和每周 |
操作符列表
创建数据库格式
create {database | schema} [if not exists] db_name
[default] character set [=] character_name
| [default] collate [=] collation_name
如图所示
[]里面的内容是可选项,例如 if not exists是可选的
| 分隔选项,例如database和schame可以任意选一个
default用于指定默认值
character set用于指定数据库字符集
collate用于指定字符集的校对规则
if not exists用于判断这个数据库是否存在,存在就不创建不报错,如果不指定该选项就会报错
选择数据库格式
use db_name;
如图所示
只有选择指定的数据库后才能对该数据库进行一系列操作
修改数据库格式
alter {database | schema} [db_name]
alter_specification...
如图所示
删除数据库格式
drop {database | schema} [if exists] db_name;
如图所示
如果没有 if exists而且该数据库不存在的话,就会发生错误
查看数据库格式
show {databases | schemas}
[link 'pattern' | where expr]
如图所示
create table 语句的语法比较多,但是还是主要由 表创建定义 表选项 分区选项组成。
表创建定义主要由表列的名字 列的定义 空值声明 完整性约束或者表索引项组成。
表索引项主要定义表的索引 主键 外键。
表的定义都被放在圆括号中,各个列间彼此用逗号分离。
创建表基本格式
create [temporary] table tb_name
(
字段名1 数据类型 [列级完整性约束条件] [默认值]
[,字段名2 数据类型 [列级完整性约束条件] [默认值]]
[,.....]
[,表级完整性约束条件]
)[engine=引擎类型];
如图所示:
表还可以分成临时表和持久表,若在create table中添加temporary创建的便是临时表,否则创建的便是持久表。
持久表一旦创建便会一直存在,多个用户或者程序可以同时使用。
临时表只对创建的用户可见,当断开数据库时便会被删除。
auto_increment可以为表中的数据类型为整型的列设置自增属性,从1开始递增,每一个表唯一,必须被索引。
通过pramary key设置主键,主键在表中必须唯一,一定要为not null。
向表中添加新列
上图给tb_student表添加列city代表城市,不为空 默认为北京 ,添加在地址列的后面。
当然也可以使用first,把列添加到地址列的前面。
修改列的数据类型
上图将address列修改为了newaddress列,将数据类型修改为了varchar,允许为null,默认值是北京。
如果将一种类型转化为另外一种类型,可能会丢失原来的数据。
如果要修改的类型和原来的类型不兼容的话,该命令将得不到执行。
如果长度变短的话,可能数据会被截断。
修改或者删除列的默认值
修改列的数据类型
删除列
一旦删除,原本存放的内存也会一起删除。
给表添加字段
删除表的字段
添加主键