共计 2023 个字符,预计需要花费 6 分钟才能阅读完成。
这篇文章将为大家详细讲解有关 mysql 数据库基础知识点的示例分析,丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
数据库
一、 修改数据表
添加一列:
ALTERTABLE tab_name ADD col_name column_defi[FIRST|AFTER col_name];
可以指定新列的位置关系,位于最开头(FIRST)或者位于某列之后(AFTER…), 否则新列默认位于最后。
添加多列:
ALTERTABLE tab_name ADD(col_name1 column_defi1,col_name2 column_defi2...);
删除一列:
ALTERTABLE tab_name DROP col_name;
删除多列或者删除之后再新增一列,只需在 drop col_name 之后加逗号,再写 drop/add。
添加约束:
ALTERTABLE tab_name ADD PRIMARY KEY (index_column);
其中 primary key 可以替换为其他约束 UNIQUE、FOREIGN KEY,默认约束为 SET DEFAULT。
删除约束:
ALTERTABLE tab_name DROP {INDEX|KEY} index_name
删除外键:
ALTERTABLE tab_name DROP FOREIGN KEY fkey_name
其中外键约束名 fkey_name 可以通过 show create table tab_name; 查看 constraint 项得到,例如
CONSTRAINT `users_ibfk_1` FOREIGN KEY (`pid`) REFERENCES
修改列定义:
ALTERTABLE tab_name MODIFY col_name col_defi;
修改列名称:
ALTERTABLE tab_name CHANGE old_colname new_name col_defi;
修改数据表名称:
RENAMETABLE old_name TO new_name;
二、 数据表操作
插入记录:
INSERT tab_name[(col_name)] VALUES (val1,val2...)
其中列名可选,如果不设置列名,默认为对每一列都插入。第二种插入方法:INSERT tab_name SET col_name=val… 第三种方法:insert tab_name select…,将查询结果插入数据表。
更新记录:
UPDATE tab_name SET col_name=val [WHERE condition];
where 条件如果不填,默认对所有记录进行更新。
删除记录:
DELETE FROM tab_name [WHERE condition];
删除满足条件的记录,如不填 where,全删。
查询记录:
SELECT col_name1,col_name2... /* 选择需要查询的列名 */
FROM tab_name/* 选择需要查询的数据表 */
WHERE condition/* 查询条件 */
GROUP BY col_name [ASC|DESC]/* 查询结果分组 */
HAVING condition/* 对查询分组经行筛选 */
ORDER BY col_name[asc|desc]/* 对查询结果经行排序 */
LIMIT [n1,]n2/* 返回从 n1 开始的 n2 条结果,不填 n1 默认从开头返回 */
三、 子查询
父查询与子查询的连接由比较符号连接,子查询返回多个结果时还可以由 ANY、ALL 对结果进行修饰。
多表更新:参照另外一个表来更新本表。
内连接:INNERJOIN ON join_condition,返回左右两表中满足条件的项。
左外连接:LEFTJOIN ON join_condition,返回左表全部与右表中满足条件的项。
左外连接:RIGHT JOIN ON join_condition,返回右表全部与左表中满足条件的项。
四、 数据库函数
CONCAT(a , b …)
连接 a,b 多个字符串
CONCAT_WS(s , a , b …)
以 s 为连接符连接多个字符串
FORMAT(f,n)
以 n 位小数显示数字 f
LOWER()/UPPER()
将内容转换为小 / 大写
LEFT/RIGHT(‘s ,n)
获取字符串左边 / 右边前 n 个字符
LENGTH()
获取字符串长度
LTRIM/RTRIM/TRIM()
去除字符串左边 / 右边 / 两边空格
REPLACE(‘s , a , b)
将字符串 s 中的 a 字符替换为 b
SUBSTRING(s ,n,e)
截取字符串从第 n 位开始的 e 个字符
IS NULL
判空
n IN(a,b,c…)
判断 n 是否在列出的值中
n BETWEEN a AND b
判断 n 是否在 a 到 b 之间
关于“mysql 数据库基础知识点的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。