打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
SQL基础语句汇总

引言

是时候复习一波SQL语句的语法了,无需太深,但总得会用啊。

语法

一步步由浅到深,这里用的都是mysql做的。

基础

连接数据库

mysql -h10.20.66.32 -uroot -p123456
  • 1

-h后面是mysqlServer所在地址,-u后面是用户名,-p后面是密码

查看数据库

show databases;
  • 1

使用数据库

use test;
  • 1

查看表

show tables;
  • 1

查看表结构

desc winton
  • 1

建表

create table t1(    id int not null primary key,     name char(20) not null    );
  • 1
  • 2
  • 3
  • 4

语法 create table 表名称( 字段名 字段名类型 字段描述符,字段名 字段类型 字段描述符);

删除表

drop table test;
  • 1

语法:drop table 表名称;

修改表

添加字段

alter table t1 add(score int not null);
  • 1

语法:alter table 表明称 add(字段名 类型 描述符);

移除字段

alter table t1 drop column score;
  • 1

语法:alter table 表名 drop colunm 字段名,drop colunm 字段名;

变更字段

alter table t1 change name score int not null;
  • 1

语法:alter table 表名 change 旧字段名 新字段名 新字段描述符

插入

全字段插入

insert into winton values(001,'zww'),(002,'rs');
  • 1

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

个别字段插入

insert into winton(id) values(004);
  • 1


查看插如后的结果,如上图所示。
语法:insert inton 表名(字段名) values(值一),(值二);

普通查询

单表全字段查询

select * from t1;
  • 1

语法:select * from 表名;

单表个别字段查询

select id from t1;
  • 1

语法:select 字段一,字段二 from 表名;

多表查询

select t1.id,t1.score,winton.name from t1,winton;
  • 1


语法:select 表一字段,表二字段,表三字段,…… from 表一,表二,表三,……;

条件查询

单表条件查询

select * from t1 where socre>90;
  • 1

语法:select 字段1,字段2 from 表名 where 条件;

多表条件查询

select t1.id,t1.score,winton.name from t1,winton where t1.id=winton.id;
  • 1


语法:select 表一字段,表二字段 from 表一,表二 where 条件;

嵌套查询

select name from winton where id=(select id from t1 where score=90);
  • 1


语法:select 字段一,字段二…… from 表名 where 条件(查询);

并查询

(select id from t1 )union(select id from winton);
  • 1

交查询

select id from t1 where id in (select id from winton);
  • 1

删除

delete from winton where id=4;
  • 1

语法:delete from 表名 where 条件;

更新

update t1 set score=69 where id=2;
  • 1

语法:update 表名 set 更改的字段名=值 where 条件;

常用函数

求和

select sum(score) from t1;
  • 1

注:sum(字段) 对字符串和时间无效

求平均值

select avg(score) from t1; 
  • 1

注:avg(字段)对字符串和时间无效

计数

select count(*) from t1;
  • 1

注:count(字段名)不包含NULL;

求最大值

select max(name) from winton;
  • 1

注:max(colunm)返回字母序最大的,返回数值最大的

求最小值

select min(name) from winton;
  • 1

注:min(colunm)返回字母序最小值,返回数值最小值

常用的修饰符

distinct 字段中值唯一

select distinct name from winton;
  • 1

limit查询结果数限制

select * from winton limit 2;
  • 1

order by 排序

select * from winton order by name;
  • 1

注:默认是升序

desc 降序

slelect * from winton order by name desc;
  • 1

asc 升序

select * from winton order by name asc;
  • 1

group by 分组

select name from winton group by name;
  • 1

索引

创建普通索引

create index wintonIndex on winton (name);
  • 1

语法:create index 索引名称 on 表名 (字段一,字段二,……);

创建唯一索引

create unique index wintonIndex on winton (id);
  • 1

语法:create unique index 索引名 on 表名 (字段一,字段二,……);
ps:unique index 要求列中数据唯一,不能出现重复。

移除索引

drop index wintonIndex on winton;
  • 1

语法: drop index 索引名 on 表名;

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
你需要的 MySQL 基础内容,全在这里了!
access vba操作数据表技巧
oracle基础sql语句
mysql数据库中命令行下常用命令的操作(增、删、改、查)和数据类型
SQL如果只知道一个字段名字但不知道是哪个表中的,如何从若干表中查询出到底是哪个表的字段?
mysql命令
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服