MySQL基础~~增、删、改、简单查
mysql> desc demo;
+-----------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| nick_name | char(100) | YES | | NULL | |
| gender | tinyint(2) | YES | | 1 | |
+-----------+------------+------+-----+---------+----------------+
一次插入单条数据
insert into demo values (1,"aaa",0);
使用这种格式时,字段和值要一一对应,不可缺任意一项,即使是自增的主键,也必须指定值。
一次插入多条数据
insert into demo values (1,"aaa",0),(2,"bbb",1),(3,"ccc",1);
为指定的字段插入值
insert into demo (nick_name) values ("ddd");
按照这个格式插入数据时,需要注意,如果某个字段有默认值,或者是自增的,那么这一个字段可以省略不写,默认赋值为默认值或者自增长的值。
删除所有数据(不加条件的删除)
delete from demo;
有条件的删除
delete from demo where id=1 and nick_name='aaa';
清空表数据
delete from demo; //仅删除记录,主键自增的值仍保留删除记录之前的值
truncate table demo; //删除记录的同时,将主键自增初始化为0
更新所有数据(不加条件的更新)
update demo set nick_name='xxxx',gender=-1;
有条件的更新记录
update demo set nick_name='xxx' where id=1;
在使用删除和更改数据的时候,一定要明白一点:
删除或者更改操作是否成功 和 删除或者更改影响的记录数是否为0 之间没有必然的联系。
查询一个表的所有数据
select * from demo;
查指定字段的数据
select id,nick_name from demo;
指定别名 (字段名和别名之间可以加as,也可以不加)
select id as person_id, nick_name as person_name from demo;
select id person_id, nick_name person_name from demo;
有条件的查询
select * from demo where id=12 and nick_name='aaaa';
限制返回结果的行数
select * from demo limit 10; //返回10条记录
select * from demo limit 5,10; //从记录中的第5条记录开始,返回10条记录。
分组查询
select count(*) from demo group by gender; //按照gender分组。
select count(*) from demo group by gender,nick_name; //按照gender和nick_name两个字段来分组
注意:
1、如果使用group by分组之后,select 选择的内容一般是聚合函数,比如min、max、sum、count、avg。因为如果是选择某些字段的话,只会保留分组之后,每个分组的第一条,没有意义。
2、如果是按照多个字段进行分组的话,那么只有当多条记录的这多个字段值都对应相同时,才认为是同一个分组;否则如果任意两条记录中的多个分组字段中,哪怕有一个分组字段值不同,都会认为不是一个分组。
消除结果中的重复咧
select distinct id from demo;
注意,distinct关键字只能放在
MySQL基础~~增、删、改、简单查的更多相关文章
- day 37-8 关于mysql 的增 删 改 查 及联合列表
1 VARCHAR : 字符串的意思 (括号内的数字代表尾数) 输入的字符串在这个范围内都行 CHAR :字符串的意思(区别就有几位数字 必须写几位) INT 整数(位数) 输入的数字 ...
- 好用的SQL TVP~~独家赠送[增-删-改-查]的例子
以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化. 本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...
- ADO.NET 增 删 改 查
ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...
- iOS FMDB的使用(增,删,改,查,sqlite存取图片)
iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...
- iOS sqlite3 的基本使用(增 删 改 查)
iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...
- django ajax增 删 改 查
具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...
- MVC EF 增 删 改 查
using System;using System.Collections.Generic;using System.Linq;using System.Web;//using System.Data ...
- C# ADO.NET (sql语句连接方式)(增,删,改)
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- 第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据
第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据 ADO.NET 为什么要学习? 我们要搭建一个平台(Web/Winform ...
- StringBuilder修改字符串内容,增,删,改,插
package seday01;/** * 字符串不变对象特性只针对字符串重用,并没有考虑修改操作的性能.因此String不适合频繁修改内容. * 若有频繁修改操作,使用StringBuilder来完 ...
随机推荐
- Android AbsListView Abs前缀
Android AbsListView Abs abstract:抽象
- eclipse中xml下Namespaces显示不全的解决办法
1.问题描述: 如图,有时候编写spring相关的xml文件时,使用namepace中显示不全或者完全不显示 2.解决方法: Window —— Spring —— Beans Support ...
- Eclipse中安装springmvc插件
我网上找了很多方法,常见的两种: 方法一: 先去下载spring-framework-x.x.x.RELEASE.zip包,然后解压,后面需要配置什么,具体的笔者也记不了,哈哈哈 方法二: 打开菜单栏 ...
- openssl windows 生成公钥与私钥
链接: https://pan.baidu.com/s/1qn-qeFxovor-vcAWFl8jIw 提取码: zy5v 一,下载安装windows平台openssl密钥生成工具,执行安装目录bin ...
- Github(1) 桌面版使用
桌面版使用 https://www.cnblogs.com/Chenshuai7/p/5486278.html 1安装 我的账号 1051196347@qq.com 密码 L*******4***** ...
- 图像跟踪(1) CSK
依赖OPENCV 1功能 鼠标选取目标 S按键取消重新选择 共享内存目标框 中心 X Y 边框W H //////////////////////////////////////////////// ...
- 多个Linux发行版安装ss服务端
本文仅做技术探讨,请在遵守相应的法律法规的前提下使用. Centos 7一键安装脚本 简单快捷,随机生成密码,默认端口默认加密类型 bash <(curl -s http://morning.w ...
- nginx做负载均衡和tomcat简单集群
Nginx做负载均衡和TOMCAT简单集群 1.下载安装nginx及其依赖包 ...
- 在Qt项目中如何添加一个已有的项目作为子项目
新建一个子目录项目(具体方法参见<类似Visual Studio一样,使用Qt Creator管理多个项目,创建子项目>),然后需要添加的项目移动到该子目录项目目录下,再在其pro文件中添 ...
- ASP.NET ActiveMQ 消息队列
1.引入 2.发送消息 3.接收消息 概述:MQ消息存放在内存,重启后,消息丢失.接收后,消息丢失(只取一次),不取,一直在且速度快. 使用前:下载apache-activemq-5.15.2-bin ...