文档章节

sql命令(四)-操作数据表中的记录

117
 117
发布于 2015/12/28 14:40
字数 757
阅读 50
收藏 1

create table users (   //实验所使用的表结构
id SMALLINT UNSIGNED PRIMARY key auto_increment,
username varchar(20) not null,
passwd varchar(20) not null,
agee TINYINT UNSIGNED not null DEFAULT 10,
sex boolean
);

1,insert使用

insert users VALUES(null,'tom','123',25,1);//id为自动标号,使用null/default 都可以让其自动增长(此写法可以省略列名,又可以让id自动增长)

insert users VALUES(default,'tom','123',default,1),(default,'tom','123',25,1);//同时插入两条记录

insert users set username='Bean',passwd='456';//插入一条记录username的值是Bean,passwd是456

2,update使用(更新记录)

UPDATE users set agee = agee + 5;//更新表中agee字段的所有记录。所有记录都加5

UPDATE users set agee = agee - id,sex = 0;//参照上面的注释

UPDATE users set agee = agee + 10 where id % 2 = 0;//id为偶数的agee字段都加10

3,delete使用(删除记录)

delete from 表 where 条件;

4,select 操作(查找语句

SELECT VERSION();//查看版本号

SELECT NOW();//查看当前系统时间

select 3+5;//计算表达式

select id,username from users;//从表中查询两列数据

SELECT id as userid,username as uname from users;//添加别名(查询出的表的字段以别名出现)


5,group by 查询结果分组(不同的值为一组) (ASC 升序,DESC 降序)

SELECT sex from users  GROUP BY sex;//得到sex字段值不同的表,相同的值只会出现一次

6,having 分组条件 ()

SELECT sex,agee from users  GROUP BY sex HAVING agee > 10;//得到sex字段值不同的表,相同的值只会出现一次,并且agee的值必须大于10

//COUNT(*)返回的是表中所有的记录数,而COUNT(expr)返回的是expr字段不为空的记录数。

SELECT sex from users  GROUP BY sex HAVING count(id)>=2;//词条语句的意思是:对sex进行分组,每个值为一组,每组的个数大于或等于2个的,则将对应的sex值显示出来。参考下面的例子


7,order by 的使用

SELECT * from users ORDER BY id DESC; //搜索表中的数据,以降序排列(显示又大到小)

SELECT * from users ORDER BY agee,id desc ;//优先以agee的值进行升序排列,如果有agee相同的值,则以对应的id进行降序排列

8,limit语句限制查询数量

SELECT * from users limit 2 ; //返回查询出的结果中前2条数据


SELECT * from users limit 3,2 ;//返回第四条开始的前2条(id为4和5的数据)数据(因为数据的是以0开始,所以3表示id为4的那条数据,2表示要查询的条数)

create table test(  //创建一张新表
id TINYINT UNSIGNED PRIMARY key auto_increment,
username varchar(20)
); 

insert test(username) SELECT username from users WHERE agee >= 30;//从表users中查询出agee大于等于30的数据,将username的值插入test(由于查询出的字段只有一个username ,但是表test有id和username,所以不能使用insert test SELECT username from users WHERE agee >= 30;,而是必须指定插入的字段


insert test1(username,agee) SELECT username ,agee from users WHERE agee >= 30;  //插入两个字段



© 著作权归作者所有

117

117

粉丝 11
博文 50
码字总数 41049
作品 0
福州
私信 提问
4、MySQL查询语句01

上一章内容介绍了关于MySQL数据类型组成及应用,本章将介绍MySQL中的一些查询语句一些常用的命令和使用实例 一、相关命令语法格式 1.1 添加字段 alter table tbname add 列类型 [not null| n...

CARYFLASH
2017/11/15
0
0
php数据库之mysql (where 、order By 、 Update)

一、如需选取匹配指定条件的数据,请向 SELECT 语句添加 WHERE 子句。 WHERE 子句 如需选取匹配指定条件的数据,请向 SELECT 语句添加 WHERE 子句。 语法 SELECT column FROM tableWHERE co...

wbf961127
2017/11/12
0
0
MySQL专题5之MySQL插入数据、查询数据以及WHERE子句、UPDATE查询和DELETE语句

1、MySQL插入数据 - 表中使用INSERT INTO SQL语句来插入数据。 - 你可以通过mysql>命令提示窗口中向数据表中插入数据。以下为MySQL数据表插入数据通用的INSERT INTO SQL语法: INSERT INTO ...

极客微信条
2017/11/16
0
0
sql删除多个字段重复数据有主键和没主键解决方法(mysql)

table user name age nub 张三 12 23 张三 12 23 张三 12 23 李四 13 21 李四 13 21 王五 11 25 查询重复记录(一条) sql:select from user group by name,age,nub having count()>1; (如需......

嗯嗯是哦
2014/03/10
0
0
一个完整的用于追踪数据改变的解决方案

在之前一篇介绍CDC的文章中,我说Audit Trail(或者Audit Log)是大部分企业级应用不可以或缺的功能。本篇给你一个完整的Audit Trail解决方案,不仅可以记录每一笔业务操作的信息(比如操作时...

长平狐
2012/09/04
65
0

没有更多内容

加载失败,请刷新页面

加载更多

通过微服务来正确实施SOA

对于组织来说,能够构建、发展和扩展大型应用程序是至关重要的, 但所涉及的挑战使其成为一项艰巨的任务。正因为如此, 微服务凭借能够将单个组件拆分成围绕特定业务功能的独立服务,已成为构建...

Linux就该这么学
10分钟前
1
0
从 Spark 到 Kubernetes — MaxCompute 的云原生开源生态实践之路

2019年5月14日,喜提浙江省科学技术进步一等奖的 MaxCompute 是阿里巴巴自研的 EB 级大数据计算平台。该平台依托阿里云飞天基础架构,是阿里巴巴在10年前做飞天系统的三大件之分布式计算部分...

阿里云官方博客
13分钟前
0
0
使用python来操作redis用法详解

1、redis连接 redis提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是StrictRedis的子类,用于向后兼容旧版本的red...

dragon_tech
13分钟前
1
0
给研发工程师的代码质量利器 | SOFAChannel#5 直播整理

> SOFA:Channel,有趣实用的分布式架构频道。 > > 本文根据 SOFAChannel#5 直播分享整理,主题:给研发工程师的代码质量利器 —— 自动化测试框架 SOFAActs。 > > 回顾视频以及 PPT 查看地址...

SOFAStack
16分钟前
0
0
段错误总结

https://blog.csdn.net/e_road_by_u/article/details/61415732 一、段错误是什么 一句话来说,段错误是指访问的内存超出了系统给这个程序所设定的内存空间,例如访问了不存在的内存地址、访问...

悲催的古灵武士
17分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部