Mysql语句示例
Mysql语句示例
最常用 sql 语句总结
前言
Mysql 是数据库开发使用的主要平台之一。sql 的学习掌握与使用是数据库开发的基础,此处展示详细sql 语句的写法,及各种功能下的 sql 语句。
在此处有 sql 语句使用示例:在这里
此处插入两张图更有说服力:

sql1.PNG

sql2.PNG
说明:
第一张图片是进入该环境,输入自己设定的密码即可进入数据库并进行相关操作;
第二张图片是演示显示所有数据库,设置当前数据库,并对当前数据库操作,显示当前数据库的所有表,查询表中部分记录的命令操作。
基本命令使用是这样的。当然sql 语句也可在其他平台使用。此处不多说明;
SQL语句详细如下:
一、数据库操作
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<span style="font-size: 14px">创建一个名称为mydb1的数据库create database mydb1;show databases;创建一个使用utf-8字符集的mydb2数据库。create database mydb2 character set utf8;创建一个使用utf-8字符集,并带校对规则的mydb3数据库。create database mydb3 character set utf8 collate utf8_general_ci;查看前面创建的mydb2数据库的定义信息show create database mydb2;删除前面创建的mydb1数据库drop database mydb1;查看服务器中的数据库,并把其中某一个库的字符集修改为gb2312;alter database mydb2 character set gb2312;show create database mydb2;使用当前数据库 mydb1,即想对当前数据库进行操作之前使用的命令use mydb1;</span> |
二、表的操作
1>表的创建演示
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<span style="font-size: 14px">创建一个员工表use mydb2;create table employee( id int, name varchar(40), sex varchar(4), birthday date, entry_date date, job varchar(40), salary decimal(8,2), resume text);show tables; 查看库的所有表(查看库里的表要先打开库)show create table employee; 查看表的创建细节desc employee; 看表结构</span> |
2>对表的基本操作:增、删、改、查
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<span style="font-size: 14px">在上面员工表的基本上增加一个image列。alter table employee add image varchar(20);修改job列,使其长度为60。alter table employee modify job varchar(60);删除sex列alter table employee drop sex;表名改为user。rename table employee to user;修改表的字符集为utf-8alter table user character set utf8;列名name修改为usernamealter table test change column address address1 varchar(30)删除表drop table user;</span> |
3>增加、插入记录的 sql 语句详细
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<span style="font-size: 14px">使用insert语句向表中插入三个员工的信息。rename table user to employee;insert into employee(id,username,birthday,entry_date,job,salary,resume) values(1,'aaa','1980-09-09','1980-09-09','bbb',90,'aaaaa');select * from employee;插入数据的细节1insert into employee values(1,'aaa','1980-09-09','1980-09-09','bbb',90,'aaaaa');插入数据的细节2insert into employee values('1','aaa','1980-09-09','1980-09-09','bbb','90','aaaaa');插入数据的细节3(插入中文) 要告诉mysql客户采用gb2312编码 show variables like 'chara%'; set character_set_client=gb2312; insert into employee(id,username) values('3','张三'); 要想查看时不乱码 show variables like 'chara%'; set character_set_results=gb2312; select * from employee;</span> |
4>删除记录的 sql 语句详细
|
1
2
3
4
5
6
7
8
|
<span style="font-size: 14px">删除表中名称为’zs’的记录。delete from employee where username='bbb';删除表中所有记录。delete from employee;使用truncate删除表中记录。truncate table employee;</span> |
5>修改记录的 sql 语句详细
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<span style="font-size: 14px">将所有员工薪水修改为5000元。update employee set salary=5000;将姓名为’bbb’的员工薪水修改为3000元。update employee set salary=3000 where username='bbb';将姓名为’bbb的员工薪水修改为4000元,job改为ccc。update employee set salary=4000,job='ccc' where username='bbb';将bbb的薪水在原有基础上增加1000元。update employee set salary=salary+1000 where username='bbb';更新要注意的问题update employee set username='ccc',salary=9000,birthday='1980-09-09',.....................update where id=1;</span> |
6>查询记录的 sql 语句详细
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
<span style="font-size: 14px">查询表中所有学生的信息。select * from student;查询表中所有学生的姓名和对应的英语成绩。select name,english from student;过滤表中重复的英语数据。select distinct english from student;在所有学生总分上加10分特长分。select name,(chinese+english+math)+10 from student;统计每个学生的总分。select name,(chinese+english+math) from student;关于排序将对象成绩过去统计大于该成绩的人数即可统计数学成绩大于90的学生有多少个?select count(*) from student where math>80;使用别名表示学生分数。select name as 姓名,(chinese+english+math)+10 as 总分 from student;select name 姓名,(chinese+english+math)+10 总分 from student;查询姓名为wu的学生成绩select * from student where name='王五';查询英语成绩大于90分的同学select * from student where english>'90';查询总分大于200分的所有同学select name from student where (chinese+english+math)>200;查询英语分数在 80-90之间的同学。select name from student where english>80 and english<90;select name from student where english between 80 and 90; == select name from student where english>=80 and english<=90;查询数学分数为89,90,91的同学。select * from student where math in(89,90,91);查询所有姓李的学生成绩。select * from student where name like '李%';select * from student where name like '李_';查询数学分>80,语文分>80的同学。select * from student where math>80 and chinese>80;分页查询,查询从第 8 条记录开始的 3 条记录;即:第8 、9 、10 三条记录int from = 2;int end = 10;String sql = "select * from student limit "+from+","+end; //字符串类型的语句select * from student limit 8,3;</span> |
三、对数据记录的操作
查询统计排序等相关处理的 sql 语句
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
<span style="font-size: 14px">对数学成绩排序后输出。select name,math from student order by math; 对总分排序后输出,然后再按从高到低的顺序输出select name 姓名,(chinese+english+math) 总分 from student order by (chinese+english+math) desc;select name 姓名,(chinese+english+math) 总分 from student order by 总分 desc;对姓李的学生成绩排序输出select * from student where name like '李%' order by (chinese+english+math) desc;统计一个班级共有多少学生?select count(name) from student;select count(*) from student;统计数学成绩大于90的学生有多少个?select count(*) from student where math>80;统计总分大于250的人数有多少?select count(*) from student where (chinese+english+math)>250;关于 count的函数的细节 (count只统有值的行)统计一个班级数学总成绩?select sum(math) from student;统计一个班级语文、英语、数学各科的总成绩select sum(chinese),sum(english),sum(math) from student;统计一个班级语文、英语、数学的成绩总和select sum(chinese+english+math) from student;统计一个班级语文成绩平均分select sum(chinese)/count(*) from student;统计一个班级语文成绩平均分select avg(chinese) from student;求一个班级总分平均分select avg(chinese+math+english) from student;求班级最高分和最低分select max(chinese+math+english),min(chinese+math+english) from student;对订单表中商品归类后,显示每一类商品的总价select product,sum(price) from orders group by product;查询购买了几类商品,并且每类总价大于100的商品select product from orders group by product having sum(price)>100;按某一属性对记录进行排序select * from student order by grade desc;</span> |
Mysql语句示例的更多相关文章
- JAVA使用jdbc连接MYSQL简单示例
以下展示的为JAVA使用jdbc连接MYSQL简单示例: import java.sql.DriverManager; import java.sql.ResultSet; import java.s ...
- NET MVC全局异常处理(一) 【转载】网站遭遇DDoS攻击怎么办 使用 HttpRequester 更方便的发起 HTTP 请求 C#文件流。 Url的Base64编码以及解码 C#计算字符串长度,汉字算两个字符 2019周笔记(2.18-2.23) Mysql语句中当前时间不能直接使用C#中的Date.Now传输 Mysql中Count函数的正确使用
NET MVC全局异常处理(一) 目录 .NET MVC全局异常处理 IIS配置 静态错误页配置 .NET错误页配置 程序设置 全局异常配置 .NET MVC全局异常处理 一直知道有.NET有相关 ...
- mysql语句:SET NAMES UTF8
一直以来只知道mysql_query("SET NAMES UTF8");是设定数据库编码的,但是一直不清楚“SET NAMES UTF8”是什么. 直到今天才知道 SET NAM ...
- MySQL安装示例数据库
MySQL安装示例数据库 本文档演示如何下载及安装MySQL示例数据库sakila及employees数据库 1. 安装sakila数据库 1.1 下载sakila数据库 wget http://do ...
- 如何根据执行计划,判断Mysql语句是否走索引
如何根据执行计划,判断Mysql语句是否走索引
- 让dede运行php代码和mysql语句
一.dede运行php代码 举例1: {dede:name runphp='yes'} $str = "hello ";@me = $str;@me .= "world& ...
- php代码优化,mysql语句优化,面试需要用到的
首先说个问题,就是这些所谓的优化其实代码标准化的建议,其实真算不上什么正真意义上的优化,还有一点需要指出的为了一丁点的性能优化,甚至在代码上的在一次请求上性能提升万分之一的所谓就去大面积改变代码习惯, ...
- mysql语句:批量更新多条记录的不同值[转]
mysql语句:批量更新多条记录的不同值 mysql更新语句很简单,更新一条数据的某个字段,一般这样写: 帮助 1 UPDATE mytable SET myfield = 'value' WHERE ...
- Thinkphp用exp表达式执行mysql语句,查询某字段不为空is not null,自动增值
Thinkphp用exp表达式执行mysql语句,查询某字段不为空is not null,自动增值 Thinkphp 的文档经常不够完整的表达MYSQL的各种组合,is not null在thinkp ...
随机推荐
- 如何查看项目的Laravel框架的版本
如何查看项目的Laravel框架的版本 接触到一个已有的使用Laravel框架的项目时, 打开项目根目录下的composer.json文件, 找到 laravel/framework 的值,即可查看版 ...
- php——数据库操作之规范性
今天在写一个项目,上传到服务器的时候出现500的错误,找了半天最后是因为数据库更新数据的语句写的不规范, 询问同事之后,同事说,数据库的增删改查语句写的不规范的时候有的时候会报错有的时候不会: 所以总 ...
- js Math [ 随机数、绝对值、四舍五入、进一取整、舍去取整、最大值、最小值、圆周率 ]
<script> /* 数学对象:Math */ with (document) { write('<br>-3.5的绝对值:'+Math.abs(-3.5)); write( ...
- codevs——1294 全排列
1294 全排列 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 给出一个n, 请输出n的所有全 ...
- Codeforces #471
C(分段) 题意: 分析: 我们分别考虑p=2和p>=3的情况 当p=2的时候,个数明显是[L,R]内完全平方数的个数 当p>=3的时候,我们注意到这样的数字个数是1e6级别的,且a最多也 ...
- go语言学习之路 二:变量
说道变量,首先应该提一提关键字,因为不能把关键字当做变量来声明. 关键字: 下面列出GO语言的关键字或保留字: break default func interface select case def ...
- VisualSVN Server 导入已存在的库
http://blog.csdn.net/lidatgb/article/details/7984220 早些时候建立过一个SVN Server的库,后来觉得库的名字太长了,随意换了一 ...
- [WASM Rust] Use the js-sys Crate to Invoke Global APIs Available in Any JavaScript Environment
js-sys offers bindings to all the global APIs available in every JavaScript environment as defined b ...
- 锤子Smartisan T1手机官方4.4.2系统内核版本号信息
从锤子smartisan T1手机官方系统EGL中获取内核版本号信息(由cofface提供): I/Adreno-EGL( 816): <qeglDrvAPI_eglInitialize:41 ...
- C++ primer 模板与泛型编程
继续浏览c++ primer 看到模板与泛型编程这章.就顺便把这几节的代码综合了下,对一个Queue队列模板的实现 贴一下代码(看完书.自己敲,忘记了哪再看下书) #include <ostre ...