MySQL学习笔记——增删改查
有关数据库的DML操作
-insert into
-delete、truncate
-update
-select
-条件查询
-查询排序
-聚合函数
-分组查询
DROP、TRUNCATE、DELETE
-DELETE删除数据,保留表结构,可以回滚,如果数据量大,很慢,回滚就是因为备份删除的数据
-TRUNCATE删除所有数据,保留表结构,不可以回滚,一次全部删除所有数据,速度相对很快
-DROP删除数据和表结构,删除数据最快(直接从内存抹去这一块数据)
#1.指明字段进行插入,注意字段和值的数量和类型都需要匹配
INSERT INTO tb_dept (NAME,loc,description) VALUES('开发部','广州','负责软件开发工作'); #2.如果插入的values是所有字段,可以不同显式写插入的字段名,不推荐
INSERT INTO tb_dept VALUES(3,'财务部','广州','负责财务工作'); #auto_increment会记住曾经生成的值 #3.一次插入多条记录 mysql特有
INSERT INTO tb_dept (NAME,loc,description)
VALUES('开发部','广州','负责软件开发工作'),
('财务部','广州','负责财务工作'),
('市场部','广州','负责采购工作'); #4.可以从一张表中插入数据
#创建一张表和tb_dept表的结构一样,通过这种方式建表只是复制表结构,不复制约束
CREATE TABLE tb_dept2
SELECT * FROM tb_dept
#where id = 99 #先建表再插入
INSERT INTO tb_dept2(id,NAME,loc,description)
SELECT id,NAME,loc,description FROM tb_dept INSERT INTO tb_emp(id,NAME,sex,age,address,email,dept_id)
VALUES(1,'Tony','男',26,'广州','Tony@163.com',1); #更新 UPDATE table SET column = value [,column = value] [WHERE condition]
#where建议使用主键或者唯一键,建议是主键
UPDATE tb_emp SET age=23 WHERE id = 1;
UPDATE tb_emp SET age=23,sex='女' WHERE id = 2; #删除 DELETE [FROM] table [WHERE condition];
DELETE FROM tb_emp; #删除表所有数据
DELETE FROM tb_emp WHERE id=2; #阶段,DDL语句 TRUNCATE语句 作用是完全清空一个表
TRUNCATE TABLE tb_emp;
最简单的SELECT语句
#查找 字段、字段。。。从 表 *表示所有的列
SELECT NAME,loc,description FROM tb_dept
SELECT * FROM tb_dept
SELECT NAME FROM tb_dept #SELECT语句中的算数表达式
SELECT NAME,age,age*2
FROM tb_emp; #NULL和0还有空字符不是一个概念
SELECT * FROM tb_emp;
SELECT * FROM tb_emp WHERE age = 0;
SELECT * FROM tb_emp WHERE age IS NULL; #改变列的标题头,别名
SELECT NAME '姓名',age AS '年龄',age*2 '年龄乘2'
FROM tb_emp; #重复记录
#缺省情况下查询显示所有行,包括重复行
SELECT dept_id
FROM tb_emp; #使用DISTINCT关键字可从查询结果中清楚重复行
SELECT DISTINCT dept_id
FROM tb_emp; #DISTINCT作用的范围是后面字段的组合
SELECT DISTINCT dept_id,age
FROM tb_emp WHERE dept_id=1; #使用WHERE子句限定返回的记录
SELECT *
FROM tb_emp
WHERE age=22; #字符串和日期要用单引号括起来
SELECT *
FROM tb_emp
WHERE NAME = 'Tom'; #比较运算符> < >= <= = <>
SELECT NAME,age
FROM tb_emp
WHERE age>=24; SELECT NAME,age
FROM tb_emp
WHERE age>=24 AND age<27; #BETWEEN AND 包含最小值和最大值
SELECT NAME,age
FROM tb_emp
WHERE age BETWEEN 24 AND 27; #使用IN运算符
SELECT NAME,age
FROM tb_emp
WHERE age IN (22,26); SELECT NAME,age
FROM tb_emp
WHERE age NOT IN (22,26); #使用LIKE运算符进行模糊查询 _代表一个字符 %代表一个或者多个字符
SELECT NAME
FROM tb_emp
WHERE NAME LIKE '_a%'; #IS NULL
SELECT NAME,age
FROM tb_emp
WHERE age IS NULL; #对结果进行排序 ORDER BY 从高到低
SELECT *
FROM tb_emp
ORDER BY age DESC; #默认从低到高或者ASC
SELECT *
FROM tb_emp
ORDER BY age;
MySQL学习笔记——增删改查的更多相关文章
- JDBC学习笔记——增删改查
1.数据库准备 要用JDBC操作数据库,第一步当然是建立数据表: ? 1 2 3 4 5 6 CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_I ...
- java jdbc 连接mysql数据库 实现增删改查
好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...
- 手撸Mysql原生语句--增删改查
mysql数据库的增删改查有以下的几种的情况, 1.DDL语句 数据库定义语言: 数据库.表.视图.索引.存储过程,例如CREATE DROP ALTER SHOW 2.DML语句 数据库操纵语言: ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...
- 【转载】通过JDBC对MySQL数据库的增删改查
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- SpringBoot+Mybatis+Maven+MySQL逆向工程实现增删改查
SpringBoot+Mybatis+MySQL+MAVEN逆向工程实现增删改查 这两天简单学习了下SpringBoot,发现这玩意配置起来是真的方便,相比于SpringMVC+Spring的配置简直 ...
- 【C#】使用NHibernate连接MySQL数据库及增删改查
学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibe ...
- 使用NHibernate连接MySQL数据库及增删改查
学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibe ...
- 学生信息管理系统--基于jsp技术和MySQL的简单增删改查
web实现增删改查的方式有很多啊,对于初学者来说当然是要先了解各部分的传值的方式.本篇博客从jsp技术的最基础方面进行说明. 一.什么是jsp技术 首先,我们要了解什么是jsp技术. jsp技术是基于 ...
随机推荐
- YY游戏私有云平台实践 (转自InfoQ )
作者 风河 发布于 2016年1月13日 | 讨论 编者按:YY游戏的页游早在2013年就在云平台上运行,其Cloud 1.0已经支撑几十万的同时在线用户.日前,YY游戏云平台进行了Cloud 2 ...
- Linux_Shell_Bash快捷键
来自为知笔记(Wiz)
- 【NOIP 2004】虫食算
因为一天机房都是断网状态,校内的小V评测这道题总显示Unaccept,所以下午放学后就和xiaoyimi晚上回家自习,来做一做这道题. 搜索+剪枝优化: 一开始我是顺着低位向高位填数,这么暴力在Vij ...
- Spring中配置和读取多个Properties文件
一个系统中通常会存在如下一些以Properties形式存在的配置文件 1.数据库配置文件demo-db.properties: database.url=jdbc:mysql://localhost/ ...
- jquery-通过js编写弹出窗口
本文转载 本文主要是通过js动态控制div的高度,css控制浮动 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional// ...
- html 语义化 资料
HTML: The Living Standard 理解HTML语义 什么是HTML语义化 为什么要语义化 写HTML代码时就注意什么 HTML 5的革新——语义化标签(一) header元素 foo ...
- CocoaPods安装使用及上传
1.升级Ruby环境 sudo gem update --system 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 2.安装CocoaPods时我们要访问cocoap ...
- finally关键字
final:禁止多态开关~修饰变量:变量不能被改变修饰类:类不能被继承修饰方法:方法不能被重写 finally:用在异常处理的最后一个语句块无论是否产生异常都要被执行~~~ Java代码 public ...
- 虚拟机克隆后找不到eth0
使用 VMware 虚拟机的克隆功能,快速复制已安装好的 Linux 系统. 克隆完成之后,发现没有 eth0 网卡. [解决方法] 1. 编辑 /etc/udev/rules.d/70-persis ...
- BZOJ2440 [中山市选2011]完全平方数
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000作者博客:http://www.cnblogs.com/ljh2000-jump/转 ...