MySQL语法笔记(自用)
数据库操作
create database 数据库名;
drop database 数据库名;
表操作
-- 建表
create table userinfo(
id int(10) primary key auto_increment, -- primary key关键字 auto_increment自增
username varchar(20) unique, --unique唯一
status varchar(20)
);-- 删除主键(primary key)
alter table userinfo drop primary key;-- 删除唯一(unique)
alter table userinfo drop key username;-- 删除自增
alter table userinfo modify id int;
-- 删表
drop table userinfo;-- 备份表
create table 表名 as (select * from 表名);-- 改表名
rename 表名 to 表名;
表中字段进行添加 add、删除 drop、修改change/modify的操作
语法:alter table 表名 add | change/modify | drop 字段名 类型 约束;
alter table userinfo add status int;alter table userinfo drop email;alter table userinfo change username login_name varchar(20);
alter table userinfo modify username varchar(16); #modify不可以用来修改字段名
alter table userinfo change username username int;
alter table userinfo change username my_username varchar(16); #同时修改字段名和数据类型
alter table userinfo modify `status` int first;
alter table userinfo modify `status` int after login_name;
操作表
查询的完整语法:
select 字段|表达式 from 表名|视图|结果集
[where 条件]
[group by 分组]
[having 分组之后进行检索]
[order by 排序]
[limit 限制结果]
-- 最低工资大于等于100,用户ID在75,702,5606,804,818中,管理员姓名第二个字母是z,工资倒序排列
select distinct a.name 名字去重,o.order_id,a.user_id,o.price 价格,if(o.price = 1999,'工资高','工资低'), -- ifnull(price ,0) 判断price 列是否是null,如果是null,则赋值为0avg(o.price ) + 0.5 AS 平均数
fromsxo_answer ainner join sxo_order_detail o on a.user_id = o.user_id
where -- where后面不可以接聚合函数,where单独使用使用o.user_id in ( 75, 702, 5606, 804, 818 ) and a.name like '_z%'
group byo.price
having -- having 后面可以接聚合函数,having搭配group by使用min(o.price )>= 100
order byo.order_id desc limit 2, 3;-- limit是从第3行开始,往后取3行(取3到6行)
-- limit m,n m:开始的位置,索引值从0开始 n:取值的长度(个数)-- 插入
insert into sxo_answer(id,user_id,name) values(1,1,'abc'),(2,2,'edf');-- 修改
update sxo_answer set name='abc' where id=1;-- 删除
delete from sxo_answer where id=1;-- 清空
truncate table sxo_answer;-- 删表
drop table sxo_answer;min() -- 最小值
max() -- 最大值
avg() -- 平均值
sum() -- 总计
count() -- 统计行数
round() -- 四舍五入表名 left join 表名 on 条件
表名 right join 表名 on 条件
注意:delete与truncate的区别是什么
1:delete是逐行删除,truncate是文件级别的清空
2.delete删除后,自增性会继续执行,不会重置
3.truncate删除后,自增性重置
MySQL语法笔记(自用)相关推荐
- MySQL学习笔记02【SQL基本概念与通用语法、数据库的CRUD操作】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL语法学习笔记
MySQL语法学习笔记 学习之道,非尽心竭力者不能进也!我是小七黛,欢迎查看我的笔记,有问题欢迎交流探讨. SQL是一种结构查询语言,用于查询关系数据库的标准语言,包括若干关键字和一致的语法,便于数据 ...
- MYSQL学习笔记(自用)第九章
MYSQL学习笔记(自用)第九章 第一节. 触发器 | Triggers DELIMITER $$CREATE TRIGGER payments_after_insertAFTER INSERT ON ...
- MYSQL学习笔记(自用)第七章
MYSQL学习笔记(自用)第七章 第一节.创建视图| Creating Views USE sql_invoicing;CREATE VIEW sales_by_client AS SELECT c. ...
- MYSQL学习笔记(自用)第一章
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 MYSQL学习笔记 前言 学习资料下载 第一章 第一节:选择语句|The Select Statement(在单一表格中检索数据) 第 ...
- MySQL学习笔记07【事务、用户管理和权限管理】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL学习笔记06【多表查询、子查询、多表查询练习】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL学习笔记05【多表操作、三大范式、数据库的备份和还原】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- MySQL学习笔记04【数据库的查询操作、今日内容、表的约束】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
最新文章
- 【 Vivado 】输出延迟约束实例
- Ubuntu 16.04通过Unity Tweak Tool实现点击图标最小化
- python多进程间通信_python多进程间通信代码实例
- android layout_width 属性,android:layout_weight属性详解
- 如何为JavaScript选择文本编辑器
- 手机应用url抓取_Python爬虫入门,快速抓取大规模数据(第六部分)
- python模块调用模块_Python模块调用
- JSP——Web应用
- LeetCode(226)——翻转二叉树(JavaScript)
- [复习]Python基础回顾
- 中国自主潜航器AUV—潜龙号
- word中输入空格变点
- 微信聊天记录删了怎么恢复找回来2022 微信聊天记录删了怎么恢复找回来步骤
- 【中学】求解一元二次方程
- MCUXpresso开发NXP RT1060(3)——移植LVGL到NXP RT1060
- win11桌面出现“了解此图片”如何删除
- Excel 2010 VBA 入门 138 添加选项卡和内置控件
- 【十八掌●基本功篇】第一掌:Java之IO
- 革命性新疗法后 第三例艾滋病治愈病例可能出现了!
- edge如何玩4399小游戏