mysql数据库基础知识点的示例分析
这篇文章将为大家详细讲解有关mysql数据库基础知识点的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
数据库
一、 修改数据表
添加一列:
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
三、 子查询
父查询与子查询的连接由比较符号连接,子查询返回多个结果时还可以由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数据库基础知识点的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341