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. C#的list和arry相互转化

    ,从System.String[]转到List<System.String> System.String[] str={"str","string" ...

  2. MVC思想及SpringMVC设计理念

    1:什么是MVC        MVC(Model View Controller)是一种软件设计的框架模式,它采用模型(Model)-视图(View)-控制器(controller)的方法把业务逻辑 ...

  3. nested exception is org.apache.ibatis.reflection.ReflectionExceptio

    org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.Reflecti ...

  4. MP实战系列(二)之集成swagger

    其实与spring+springmvc+mybatis集成swagger没什么区别,只是之前写的太不好了,所以这次决定详细写. 提到swagger不得不提rest,rest是一种架构风格,里面有对不同 ...

  5. MATLAB——BP神经网络

    1.使用误差反向传播(error back propagation )的网络就叫BP神经网络 2.BP网络的特点: 1)网络由多层构成,层与层之间全连接,同一层之间的神经元无连接 . 2)BP网络的传 ...

  6. Android 仿携程活动列表边框布局

    实现如下图所示的一个页面布局 布局框架 思路讲解: 1.一开始的思路是使用android提供的画布将布局中的内容花下来,之后想了想觉得比较麻烦,所以又开启了另外一条思路. 2.如上图“布局框架”所示. ...

  7. jdk和cglib简单理解

    之前使用cglib的时候不需要将classLoader作为参数传入,但动态代理却要,带着这个疑惑进入这个方法: Proxy.newProxyInstance(classLoader, interfac ...

  8. OOM异常的4种可能分析

    OOM异常:OutOfMemoryError 1.JAVA堆溢出 JAVA堆用于存储对象实例,只要不断的创建对象,并且保证GC Roots到这些对象之间有路径可以来避免垃圾回收机制清除这些对象,那么在 ...

  9. BesLyric 全新版本下载 ( windows \ mac \ linux )

    导读 BesLyric , 一款专门制作 网易云音乐 LRC 滚动歌词的软件! 搜索.下载.制作 歌词更方便! 很荣幸地,自 beslyric 2017 年开发推出以来,得到了很多云村村民的肯定,现在 ...

  10. Oracle 将一个查询结果值动态赋值给一个变量

    在写存储过程或函数时,经常需要用到中间变量,需要将一些值做临时存储. 可以通过动态变量方式来赋值.如下: FUNCTION YOUR_FUN (VAL1 IN NVARCHAR2) RETURN NC ...