1、先创建一个学生表

create table students (

id int auto_increment not null primary key,

name varchar(20)  not null,

age int unsigned default null,

height decimal(5,2) default null,

gender enum('男','女','保密') default '保密',

cls_id int unsigned default 0

);

在创建一个班级表

create table classes (

id int unsigned not null primary key,

name varchar(20) not null

);

2、逻辑运算符

(1)查询编号大于3的女同学:select * from students where id > 3 and gender=0;

(2)查询编号小于4或年龄大于20的学生:select * from students where id < 4 or age>20;

3、模糊查询

(1)查询姓黄的学生:select  *  from students where name like '黄%';

   (2)查询姓黄并且“名”是一个字的学生:select  *  from students where name like '黄_';

   (3)查询姓黄或叫靖的学生:select  * from students where name like '黄%' or name like '%靖';

4、范围查询

  (1)查询编号是1或3或8的学生(非连续范围):select * from students where id in(1,3,8);

  (2)查询编号为3至8的学生(连续范围查询):select * from students where id between 3 and 8;

5、空判断

  (1)查询没有填写身高的学生:select * from students where height is null;

  (2)查询填写了身高的学生:select * from students where height is  not null;

  (3)查询填写了身高的男生:select * from students where height is not null and gender='男';

6、排序

    注解:将行数据按照列1进行排序,如果某些行列1的值相同时,则按照列2排序,以此类推默认按照列值从小到大排列(asc)asc从小到大排列,即升序desc从大到小排序,即降序

  (1)显示所有的学生信息,先按照年龄从大-->小排序,当年龄相同时 按照身高从高-->矮排序:select * from students order by age desc,height desc;

7、聚合函数

  (1)查询学生总数:select  count(*)  from students;

  (2)查询女生的编号最大值: select max(id)  from students where gender='女';

  (3)查询男生的编号最小值: select min(id)  from students where gender='男';

  (4)查询男生的总年龄: select sum(age) from students where gender='男;

  (4)查询未年龄大于20的女生的编号平均值: select avg(id)  from students where age>20 and gender='女';
8、分组

  (1)查询性别为男的平均年龄,总人数,以及包含哪些人:select gender,count(*),avg(age),group_concat(name) from studetns group by gender having gender=1;

9、连接查询

内连接查询(取俩个表的交集,没有则不显示)

  (1)查询每个学生对应的班级:select * from studetns as s inner join classes c on s.cls_id=c.id;

   左连接查询(已左表为基准)

  (2)查询每个学生对应的班级:select * from studetns as s left join classes c on s.cls_id=c.id;

  右连接查询

  (3)查询每个学生对应的班级: select * form studetns as s right join classes on s.cls_id=c.id;

10、分页查询

  (1)查询第二页,每页显示2个:select * from studetns limit 2,2;

网络编程-Mysql-2、各种查询的更多相关文章

  1. linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程

    1.设置任务调度命令crontab 任务调度是指系统在某个时间执行的特定的命令或程序.任务调度分为:1)系统工作:有些重要的工作必须周而复始的执行,如病毒扫描.2)个别用户工作:个别用户可能希望执行某 ...

  2. Android之网络编程利用PHP操作MySql插入数据(四)

    因为最近在更新我的项目,就想着把自己在项目中用到的一些的简单的与网络交互的方法总结一下,所以最近Android网络编程方面的博文会比较多一些,我尽量以最简单的方法给大家分享,让大家明白易懂.如果有什么 ...

  3. 网络编程-Java中的Internet查询

    前提 在深入理解URL.URI等概念,或者学些Socket相关的知识之,有必要系统理解一下Internet相关的一些基础知识. Internet地址 连接到Internet(因特网)的设备称为节点(n ...

  4. 第四模块:网络编程进阶&数据库开发 第2章·MySQL数据库开发

    01-MySQL开篇 02-MySQL简单介绍 03-不同平台下安装MySQL 04-Windows平台MySQL密码设置与破解 05-Linux平台MySQL密码设置与破解 06-Mac平台MySQ ...

  5. iOS UI高级之网络编程(HTTP协议)

    HTTP协议的概念 HTTP协议,Hyper Text Transfer Protocol (超文本传输协议)是用于从万维网服务器传送超文本到本地浏览器的传输协议,HTTP是一个应用层协议,由请求和响 ...

  6. 第十三章:Python の 网络编程进阶(二)

    本課主題 SQLAlchemy - Core SQLAlchemy - ORM Paramiko 介紹和操作 上下文操作应用 初探堡垒机 SQLAlchemy - Core 连接 URL 通过 cre ...

  7. day8网络编程,面向对象1

    一.只是回顾 1.导入模块的顺序,首先从当前目录下找,再从环境变量里面找,使用"sys.path.insert(0,'需要导入的环境变量')"加入需要导入文件的环境变量; 2.如果 ...

  8. Socket网络编程--聊天程序(7)

    接上一小节,本来是计划这一节用来讲数据库的增删改查,但是在实现的过程中,出现了一点小问题,也不是技术的问题,就是在字符界面上比较不好操作.比如要注册一个帐号,就需要弄个字符界面提示,然后输入数字表示选 ...

  9. Socket网络编程--聊天程序(8)

    上一节已经完成了对用户的身份验证了,既然有了验证,那么接下来就能对不同的客户端进行区分了,所以这一节讲实现私聊功能.就是通过服务器对客户端的数据进行转发到特定的用户上, 实现私聊功能的聊天程序 实现的 ...

随机推荐

  1. magento 2 Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory errors.%

    Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on h ...

  2. ubuntu16.04+cuda9+cudnn7+tensorflow+pycharm环境搭建

    安装环境:ubuntu16.04+cuda9+cudnn7+tensorflow+pycharm 1)前期搭建过程主要是按照这篇博文,对于版本选择,安装步骤都讲得很详细,亲测有效! https://b ...

  3. Recurrent Neural Networks(RNN) 循环神经网络初探

    1. 针对机器学习/深度神经网络“记忆能力”的讨论 0x1:数据规律的本质是能代表此类数据的通用模式 - 数据挖掘的本质是在进行模式提取 数据的本质是存储信息的介质,而模式(pattern)是信息的一 ...

  4. “HtmlAgilityPack”已拥有为“System.Net.Http”定义的依赖项的解决方案

    #事故现场 在vs2013上用nuget安装 HtmlAgilityPack -Version 1.8.9时,报错如下: Install-Package : “HtmlAgilityPack”已拥有为 ...

  5. Docker:Docker 性质及版本选择 [三]

    一.Docker的性质 Docker的组成其实很简单.你需要搭建registry,专属于你自己的私有仓库,然后就是docker的镜像和docker的容器.Docker的镜像,就类似与windos的系统 ...

  6. 学习python笔记 协程

    下面将一个经典的消费者和生产者的案例进行分析: import time def consumer(): r = '' while True: n = yield r if not n: return ...

  7. 5.CentOS7安装MySQL

    在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB. 1 下载并安装MySQL官方的 Yum Re ...

  8. Centos7 安装 jdk 1.8

    Centos7 安装 jdk 1.8 1.下载安装包 链接: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloa ...

  9. Selective Search for Object Recognition(理解)

    0 - 背景 在目标检测任务中,我们希望输入一副图像,输出目标所在的位置以及目标的类别.最常用的算法是滑动窗口方法,但滑动窗口其实相当于穷举图像中的所有子图像,其效率低且精度也受限.该论文提出一种新的 ...

  10. python 列表 元组 字典 集合

    列表 lst = [i for i in range(10)] 切片 # 把下标小于2的显示出来 print(lst[:2]) # 把10个数有大到小输出 print(lst[::-1]) # 把下标 ...