mysql 行增删改查
一、增
insert into student(name, age) values('tom', 20);
insert into student(name, age) values('tom', 18),('joker', 18);
insert into student(name, age) select name, age from info;
二、删
delete from db1;
delete from db1 where 条件判断
delete from db1 where 条件判断 and 条件判断
delete from db1 where 条件判断 or 条件判断
条件判断
= !=
< <=
> >=
truncate table db1;
三、改
update db1 set name = 'master';
update db1 set name = 'joker' where age = 20;
四、查
前面
select * from db1;
select name,age from db1;
select name as n, age from db1; 别名
select name,1 from db1;
条件
select * from tb1 where name = 'tom'; # 条件判断
select * from tb1 where name = 'tom' and age >1;
select * from tb1 where name = 'tom' or name = 'joker';
select * from tb1 where name in ('tom', 'joker')
select * from tb1 where name not in ('tom', 'joker');
select * from tb1 where id between 1 and 5; # 闭区间
select * from tb1 where id in(select id from info);
通配符
select * from tb1 where name like 'a%';
select * from tb1 where name like 'a_';
注意:% 匹配任意字符,_ 匹配一个字符
分页
select * from tb1 limit 位置, 长度; # 若limit后面,只有一个参数,则是长度
select * from tb1 limit 长度 offset 位置;
排序
select * from tb1 order by id asc;
select * from tb1 order by id desc;
分组
select count(cid), caption from class group by caption;
select count(cid), caption from class where id > 5 group by caption having count(cid) >1;
聚合函数: max(列) min(列) sum(列) avg(列) count(列) 计算
注意:对聚合函数的结果进行比较要使用 having 相当于 where, where 在 最前面
连表操作
select * from userinfo1,department where userinfo.id=department.d_id;
# 不常用
select * from userinfo
left join department on userinfo.id=department.d_id;
# 左边全显示,右边没有补NULL
select * from userinfo
inner join department on userinfo.id = department.d_id;
# 不显示NULL
select * from userinfo
right join department on userinfo.id = department.d_id;
# 右边的全显示,左边没有补NULL 注意:left join, right join, inner join, 都用on ',' 用where
前面的列,若是表有相同的列 表名.列名 来表示
补充
1.distinct 有去重的效果,但最好不要使用,效率低
select distinct username from userinfo;
2.查询多个表,会出现笛卡尔积现象
3.映射可以是查询语句
select (select name from info) from userinfo;
4.条件语句
case when 条件 then 为True else 为false end
6.判断是否为空
if(isnul(数据), 0, 1)
7.unoin
上下链表,注意列要一样
具有去重的作用,union all不去重
select * from userinfo
union
select * from info;
mysql 行增删改查的更多相关文章
- MySQL数据库(增删改查语句)
MySQL数据库(增删改查语句)一.登录数据库:----> mysql -uroot -proot;(对应用户名和密码)二.SQL语句: 数据定义语言DDL 用来定义数据库.表.列,关 ...
- Asp.Net操作MySql数据库增删改查
Asp.Net操作MySql数据库增删改查,话不多说直接步入正题.git源码地址:https://git.oschina.net/gxiaopan/NetMySql.git 1.安装MySQL数据库 ...
- MySQL之增删改查之
MySQL之增删改查 前言:以下是MySQL最基本的增删改查语句,很多IT工作者都必须要会的命令,也是IT行业面试最常考的知识点,由于是入门级基础命令,所有所有操作都建立在单表上,未涉及多表操作. ...
- MySql之增删改查 · YbWork's Studio
前提:在进行"增删改查"的操作之前,先建立一个包含数据表student的数据库(具体操作可以见MySQL之最基本命令): 1."增"--添加数据 1.1 为表中 ...
- Java连接MySQL数据库增删改查通用方法
版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...
- python操作mysql数据库增删改查的dbutils实例
python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...
- Mysql 的 增删改查
mysql的增删改查 1:新建数据库 create database 数据库名 [其他选项]; 2:新建数据表 create table students ( id int unsigned not ...
- MongoDB学习-->命令行增删改查&JAVA驱动操作Mongodb
MongoDB 是一个基于分布式文件存储的数据库. 由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关 ...
- 使用MySQL练习增删改查时因为版本问题出现连接错误
使用MySQL练习增删改查时出现连接错误,错误提示如下: 2020-02-19 19:53:51.088 ERROR 16328 --- [reate-249798694] com.alibaba.d ...
随机推荐
- css元素居中的几种方式
1.水平居中 <div style="width:200px;margin:0 auto;background-color: yellow;">水平居中</div ...
- C# 程序集数量对软件启动性能的影响
本文通过很多的数据测试分析在一个项目引用很多个外部项目和将外部项目的类合并到一个项目之间的启动性能的不同. 通过分析知道了如果一个项目引用了很多项目,而且在启动过程会全部调用这些项目,这时的软件性能会 ...
- 【31.95%】【CF 714B】Filya and Homework
time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...
- java.util.Date和jdk1.8新时间API比拼
旧的时间和日期的API的缺陷 Java 的 java.util.Date 和 java.util.Calendar 类易用性差,不支持时区,而且都不是线程安全的. Date如果不格式化,打印出的日期可 ...
- poj1080 - Human Gene Functions (dp)
题面 It is well known that a human gene can be considered as a sequence, consisting of four nucleotide ...
- c++修改系统环境变量 (修改注册表以后,立刻使用SendMessageTimeout(HWND_BROADCAST进行广播)
#include "stdafx.h" #include "addPath.h" #define _AFXDLL #include <afxwin.h&g ...
- Helm Chart 一键部署 Jenkins
Jenkins Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件.目前提供超过1000个插件来支持构建.部署.自动化, 满足任何项目的需要. Jenki ...
- JVM执行引擎
1.概述 执行引擎是jvm核心组成部分之一,建立在物理器,硬件和操作系统层面之上,引擎在执行代码时会有解释执行和编译执行两种选择,输入字节码文件,字节码解析输出结果. 2.栈帧 栈帧是用于支持虚拟机进 ...
- Mac常用的软件推荐
Alfred 效率软件,让能更快的启动各种软件 VScode 编辑器,市面上最热的编辑器,好用的不只是一点点,加上Vim插件简直就是秒杀市面上各种IDE PicGo 一个开源图床软件,支持各大网站的图 ...
- FPM简介(定制rpm包)
FPM简介 fpm是生成rpm包的工具.rpm包的制作,采用fpm工具完成,FPM非常易用,此命令可以把rpm包的安装.卸载做得更加优雅,在安装前可以做一些准备工作,安装后可以做一些收尾工作,在卸载前 ...