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基础~~增、删、改、简单查的更多相关文章

  1. day 37-8 关于mysql 的增 删 改 查 及联合列表

    1      VARCHAR : 字符串的意思 (括号内的数字代表尾数) 输入的字符串在这个范围内都行 CHAR  :字符串的意思(区别就有几位数字 必须写几位) INT   整数(位数) 输入的数字 ...

  2. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  3. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

  4. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

  5. iOS sqlite3 的基本使用(增 删 改 查)

    iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...

  6. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  7. MVC EF 增 删 改 查

    using System;using System.Collections.Generic;using System.Linq;using System.Web;//using System.Data ...

  8. C# ADO.NET (sql语句连接方式)(增,删,改)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  9. 第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据

    第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据 ADO.NET 为什么要学习? 我们要搭建一个平台(Web/Winform ...

  10. StringBuilder修改字符串内容,增,删,改,插

    package seday01;/** * 字符串不变对象特性只针对字符串重用,并没有考虑修改操作的性能.因此String不适合频繁修改内容. * 若有频繁修改操作,使用StringBuilder来完 ...

随机推荐

  1. 【转】MySQL理解索引、添加索引的原则

    索引用于快速找出在某个列中有一特定值的行.不使用索引,MySQL必须从第1条记录开始然后读完整个表直到找出相关的行,还需要考虑每次读入数据页的IO开销.而如果采取索引,则可以根据索引指向的页以及记录在 ...

  2. ORB-SLAM2(3) ROS下实时跑ORB_SLAM2

    Step1 : 运行内核 roscore Step2 : 启动相机 cd catkin_ws/src/usb_cam/launch #进入usb_cam驱动的安装目录 roslaunch my_cam ...

  3. nodejs stream 手册学习

    nodejs stream 手册 https://github.com/jabez128/stream-handbook 在node中,流可以帮助我们将事情的重点分为几份,因为使用流可以帮助我们将实现 ...

  4. 3902-luogu 最长不下降子区间

    题目 现有数列A1,A2,…An ,修改最少的数字,使得数列严格单调递增. 依旧是书上的题 但是书上的范围比较小 而 lg上的数据范围很大 按书上的 方法 是会超时 只能过一半的数据 但是 算法思路还 ...

  5. 开源项目Bug悬赏任务

    导读 2014 年开源加密库 OpenSSL 项目爆出的高危漏洞 Heartblood 让世人意识到一些鲜为人知的开源项目对整个互联网和其它基础设施的完整性和可靠性至关重要,随后 Linux 基金会发 ...

  6. Vue2 第一天学习

    个人小总结:1年多没有写博客,感觉很多知识点生疏了,虽然工作上能解决问题,但是当别人问到某个知识点的时候,还是迷迷糊糊的,所以坚持写博客是硬道理的,因为大脑不可能把所有的知识点记住,有可能某一天忘了, ...

  7. 每个大主播都是满屏弹幕,怎么做到的?Python实战无限刷弹幕!

    anmu 是一个开源的直播平台弹幕接口,使用他没什么基础的你也可以轻松的操作各平台弹幕.使用不到三十行代码,你就可以使用Python基于弹幕进一步开发.支持斗鱼.熊猫.战旗.全民.Bilibili多平 ...

  8. Zookeeper-集群与单机实践

    我用的是linux,CentOS7.3,zookeeper的版本是3.4.6,工具XShell.上传zookeeper的压缩包后我们开始操作. 集群模式: 1.解压zookeeper,路径随意 tar ...

  9. IntelliJ IDEA下自动生成Hibernate映射文件以及实体类

    来自:https://blog.csdn.net/chenyunqiang/article/details/81026823 1.构建项目并添加项目结构配置以及配置初始参数 1.1.如图将基本的架子搭 ...

  10. Linux mount 命令

    mount 命令用来挂载文件系统.其基本命令格式为:mount -t type [-o options] device dirdevice:指定要挂载的设备,比如磁盘.光驱等.dir:指定把文件系统挂 ...