MySQL常用sql

一、常用操作数据库命令

  1. 查看所有数据库:show database;
  2. 创建一个数据库:create database if not exists 数据库名;
  3. 删除一个数据库;drop database if exists 数据库名;
  4. 选择一张表(注意建表之前要选择数据库):user `表名`;
  5. 在选中数据库之中查看所有的表:show tables;
  6. 查看创建数据库的语句:show create databasse 数据库名;
  7. 查看指定表的定义语句:show create table 表名;
  8. 显示表的结构 :desc 表名;
  9. 删除表 : drop table 表名;
  10. 查看创建库的详细信息 :show create database 库名;
  11. 查看创建表的详细信息 : show create table 表名;

二、建一张表

CREATE TABLE [IF NOT EXISTS] `表名`(
`字段名` 列类型[属性][索引][注释],
`字段名` 列类型[属性][索引][注释],
`字段名` 列类型[属性][索引][注释] (最后一句可以不要逗号)
[表类型][表的字符集设置][注释]

三、DML数据库操作语言

1.增

语法:insert into 表名 (`字段名1`,`字段名2`,`字段名3`,……) values (`值1`,`值2`,`值3`, ……)

还可以同时插入多条数据,VALUES后面的值需要使用,隔开即可
语法:

insert into 表名 (`字段名1`,`字段名2`,`字段名3`,……) values (`值1`,`值2`,`值3`, ……),(`值1`,`值2`,`值3`, ……),……

2.改

update 表名 set `字段名1` = '值1' ,`字段名2` = '值2'where [条件]

3.删

delete from 表名 [where 条件]

作用:完全清空一个数据库,表的结构和索引不会变

delete 和 truncate 区别

相同点: 都能删除数据,都不会删除表结构
不同:

  • TRUNCATE 重新设置自增列 计数器会归零
  • TRUNCATE 不会影响事务

四、DQL查询数据

select语法:

select [ALL|DISTINCT]
{*|table.*|[table.filed1p[as alias1][,table.filed2[as alias2]][],...]}
from table_name [as table_alias]
[left|right|inner join table_name2] -- 联合查询
[where ...] -- 指定结果需要满足的条件
[group by ...] -- 指定结果按照哪几个字段来分组
[having] -- 过滤分组的记录必须满足吃药条件
[order by ...] -- 指定查询记录案一个或者多个条件排序
[LIMIT {[offset,]row_count | row_countOFFSET offset}]; -- 分页

关于left join
left join 保留原表的全部数据和所连接表与查询条件满足的数据。若所连接表没有,则将该字段置为空
关于right join
right join 保留原表中与查询条件满足的数据和所连接表的全部数据,若原表没有,则将该字段置为空
关于inner join
inner join 只保留两个表相同的数据

关于order by

order by 字段名 [desc|asc] desc表示降序,asc表示升序

关于limit 第一个参数表示从第几个元素开始,第二个参数表示这一页有几个元素

关于子查询:
即where 里面嵌套查询语句。

posted @   生活的样子就该是那样  阅读(54)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示