增删查改-MySQL
查询:
在MySQL中,select的基本语法形式:
select 属性列表
from 表名和视图
[where 条件表达式]
[group by 属性名 [having 条件表达式]]
[order by 属性名 [asc|desc]]
看看具体的用例:
首先看看表的结构:
mysql> desc user;
+----------+-----------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-----------------+------+-----+---------+----------------+
| id | int(4) unsigned | NO | PRI | NULL | auto_increment |
| account | varchar(10) | NO | | NULL | |
| password | varchar(10) | NO | | NULL | |
+----------+-----------------+------+-----+---------+----------------+
最简单的查找,查找出全部,*匹配所有数据,user就是表名:
mysql> select * from user;
+----+------------+----------+
| id | account | password |
+----+------------+----------+
| 1 | xujianguo | xjg |
| 2 | wenjian | cwj |
| 3 | xiongsheng | hxs |
+----+------------+----------+
加入条件后的查询:
mysql> select * from user
-> where id > 1
-> order by id desc;
+----+------------+----------+
| id | account | password |
+----+------------+----------+
| 3 | xiongsheng | hxs |
| 2 | wenjian | cwj |
+----+------------+----------+
带in关键字的查询:
用in关键字可以判断某个字段的值是否在指定的集合中。
mysql> select * from user
-> where id in(1, 3);
+----+------------+----------+
| id | account | password |
+----+------------+----------+
| 1 | xujianguo | xjg |
| 3 | xiongsheng | hxs |
+----+------------+----------+
2 rows in set (0.02 sec)
带between and的范围查询:
between and关键字可以判断某个字段的值是否在指定的范围内。
mysql> select * from user
-> where id between 2 and 3;
+----+------------+----------+
| id | account | password |
+----+------------+----------+
| 2 | wenjian | cwj |
| 3 | xiongsheng | hxs |
+----+------------+----------+
带like的字符匹配查询:
like关键字可以匹配字符串。
mysql> select * from user
-> where account like 'wen%';
+----+---------+----------+
| id | account | password |
+----+---------+----------+
| 2 | wenjian | cwj |
+----+---------+----------+
分组查询:
group by关键字与group_concat函数一起使用,进行分组显示。
mysql> select * from user;
+----+------------+----------+
| id | account | password |
+----+------------+----------+
| 1 | xujianguo | xjg |
| 2 | wenjian | cwj |
| 3 | xiongsheng | hxs |
| 4 | zheng | cwj |
+----+------------+----------+ mysql> select password, group_concat(account) from user
-> group by password;
+----------+-----------------------+
| password | group_concat(account) |
+----------+-----------------------+
| cwj | wenjian,zheng |
| hxs | xiongsheng |
| xjg | xujianguo |
+----------+-----------------------+
使用count()函数查询:
mysql> select count(*) from user;
+----------+
| count(*) |
+----------+
| 4 |
+----------+
使用max()函数查询:
mysql> select max(id) from user;
+---------+
| max(id) |
+---------+
| 4 |
+---------+
连接查询:
将两个或者两个以上的表按照某个条件连接起来。
mysql> select user.id, account, usermessage.message
-> from user, usermessage
-> where user.id = usermessage.id;
+----+------------+----------+
| id | account | message |
+----+------------+----------+
| 1 | xujianguo | hello |
| 2 | wenjian | love you |
| 3 | xiongsheng | yes |
| 4 | zheng | no no no |
+----+------------+----------+
子查询:
也就是说查询语句里面嵌套着另外一个查询语句。
mysql> select * from user
-> where id in (select id from usermessage where id in(1, 2))
-> ;
+----+-----------+----------+
| id | account | password |
+----+-----------+----------+
| 1 | xujianguo | xjg |
| 2 | wenjian | cwj |
+----+-----------+----------+
插入:
在MySQL中,可以通过不指定具体字段名为表插入记录,其基本语句形式:
insert into 表名 values(值1, 值2......)
mysql> insert into usermessage values(5, 'no problem');
Query OK, 1 row affected (0.09 sec)
这里就隐含了对应的值对应插入的规则。
当然也可以指定插入,其基本的语句格式:
insert into 表名(属性1, 属性2......) values(值1, 值2......)
mysql> insert into usermessage(message, id) values("enen", 6);
Query OK, 1 row affected (0.09 sec)
更新:
在MySQL中,update语句的基本语法形式:
update 表名
set 属性名1=值1, 属性名2=值2......
where 条件表达式;
mysql> update usermessage
-> set message = 'nimei'
-> where id = 2;
Query OK, 1 row affected (0.11 sec)
删除:
在MySQL中,delete语句的基本语法形式为:
delete from 表名 [where 条件表达式];
mysql> delete from usermessage where id = 5;
Query OK, 1 row affected (0.10 sec)
增删查改-MySQL的更多相关文章
- nodejs连接mysql并进行简单的增删查改
最近在入门nodejs,正好学习到了如何使用nodejs进行数据库的连接,觉得比较重要,便写一下随笔,简单地记录一下 使用在安装好node之后,我们可以使用npm命令,在项目的根目录,安装nodejs ...
- php mysql增删查改
php mysql增删查改代码段 $conn=mysql_connect('localhost','root','root'); //连接数据库代码 mysql_query("set na ...
- node.js+mysql增删查改
数据库和表: -- -- 数据库: `test` -- -- -------------------------------------------------------- -- -- 表的结构 ` ...
- PHP与MYSQL结合操作——文章发布系统小项目(实现基本增删查改操作)
php和mysql在一起几十年了,也是一对老夫老妻了,最近正在对他们的爱情故事进行探讨,并做了一个很简单的小东西——文章发布系统,目的是为了实现mysql对文章的基本增删查改操作 前台展示系统有:文章 ...
- mysql 增删查改
非关系型数据库关系型数据库Oracle mysql sqlserver db2 Postgresql Sqlite access sqlserver 微软db2 ibm================ ...
- mybatis、spring、mysql、maven实现简单增删查改
之前写过的mybatis博客作为学习mybatis.spring还是不太合适. 现在找到一个不错的例子,首先将这个完整的mybatis增删查改例子在本地上实现出来,然后再进行学习. 项目结构与运行结果 ...
- Java连接MySQL数据库及简单的增删查改操作
主要摘自 https://www.cnblogs.com/town123/p/8336244.html https://www.runoob.com/java/java-mysql-connect.h ...
- Python对MySQL进行增删查改
python连接MySQL数据库:pymysql # 测试操作 import pymysql # 打开数据库 db = pymysql.connect("localhost", & ...
- 后端Spring Boot+前端Android交互+MySQL增删查改(Java+Kotlin实现)
1 前言&概述 这篇文章是基于这篇文章的更新,主要是更新了一些技术栈以及开发工具的版本,还有修复了一些Bug. 本文是SpringBoot+Android+MySQL的增删查改的简单实现,用到 ...
随机推荐
- 【Python】Python的urllib模、urllib2模块的网络下载文件
因为需要从一些下载一个页PDF文件.但是需要下载PDF有数百个文件,这是不可能用人工点击下载.只是Python有相关模块,所以写一个程序PDF文件下载,顺便熟悉Python的urllib模块和ulrl ...
- SSIS从理论到实战,再到应用(2)----SSIS包的控制流
原文:SSIS从理论到实战,再到应用(2)----SSIS包的控制流 前文回顾: SSIS从理论到实战,再到应用(1)----创建自己的第一个包 上次说到创建了自己的第一个包,完成了简单的数据从数据库 ...
- hadoop得知;datajoin;chain署名;combine()
hadoop一种简化机制来管理job和control作业之间的非线性依赖,job对象mapreduce表明. job该目的是通过使实例化jobconf对象的构造函数的工作落实. x.addDeopen ...
- crawler_大型舆情架构图
- java_Eclipse主题颜色配置+全屏
http://www.eclipsecolorthemes.org/ 这个是主题的网站. 在Eclipse里, File->Import->General->Preferences- ...
- js 上一天、下一天
function Previousday() { var curDate = new Date(CreateDate_Temp); * * * ); var strDate = preDate.get ...
- 阅读安卓在线(Android)系统源代码
http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.android/android/ 版权声明:本文博客原创 ...
- lua本学习笔记功能
Lua本学习笔记功能 1. 函数返回 指定任务的主要功能是完成,在这种情况下,函数被用作调用语句.函数可以计算并返回值,在这种情况下,作为分配值表达式语句使用. 语法: funcationfunc_ ...
- [推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到)
原文:[推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到) [推荐]ORACLE PL/SQL编程之四: 把游标说透(不怕做不到,只怕想不到) 继上两篇:ORACLE PL ...
- Nginx均衡负载(IP_HASH)未生效
由于公司业务的发展,单台服务器已经无法满足并发和用户的需求,所以只能通过水平拓展的方式加机器来解决,线上采用的是Nginx+Tomcat集群的方式来解决.由于当前业务量不是很大,而且由于之前代码的问题 ...