网络编程-Mysql-2、各种查询
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、各种查询的更多相关文章
- linux学习笔记4:linux的任务调度,进程管理,mysql的安装和使用,ssh工具的使用,linux网络编程
		1.设置任务调度命令crontab 任务调度是指系统在某个时间执行的特定的命令或程序.任务调度分为:1)系统工作:有些重要的工作必须周而复始的执行,如病毒扫描.2)个别用户工作:个别用户可能希望执行某 ... 
- Android之网络编程利用PHP操作MySql插入数据(四)
		因为最近在更新我的项目,就想着把自己在项目中用到的一些的简单的与网络交互的方法总结一下,所以最近Android网络编程方面的博文会比较多一些,我尽量以最简单的方法给大家分享,让大家明白易懂.如果有什么 ... 
- 网络编程-Java中的Internet查询
		前提 在深入理解URL.URI等概念,或者学些Socket相关的知识之,有必要系统理解一下Internet相关的一些基础知识. Internet地址 连接到Internet(因特网)的设备称为节点(n ... 
- 第四模块:网络编程进阶&数据库开发 第2章·MySQL数据库开发
		01-MySQL开篇 02-MySQL简单介绍 03-不同平台下安装MySQL 04-Windows平台MySQL密码设置与破解 05-Linux平台MySQL密码设置与破解 06-Mac平台MySQ ... 
- iOS UI高级之网络编程(HTTP协议)
		HTTP协议的概念 HTTP协议,Hyper Text Transfer Protocol (超文本传输协议)是用于从万维网服务器传送超文本到本地浏览器的传输协议,HTTP是一个应用层协议,由请求和响 ... 
- 第十三章:Python の 网络编程进阶(二)
		本課主題 SQLAlchemy - Core SQLAlchemy - ORM Paramiko 介紹和操作 上下文操作应用 初探堡垒机 SQLAlchemy - Core 连接 URL 通过 cre ... 
- day8网络编程,面向对象1
		一.只是回顾 1.导入模块的顺序,首先从当前目录下找,再从环境变量里面找,使用"sys.path.insert(0,'需要导入的环境变量')"加入需要导入文件的环境变量; 2.如果 ... 
- Socket网络编程--聊天程序(7)
		接上一小节,本来是计划这一节用来讲数据库的增删改查,但是在实现的过程中,出现了一点小问题,也不是技术的问题,就是在字符界面上比较不好操作.比如要注册一个帐号,就需要弄个字符界面提示,然后输入数字表示选 ... 
- Socket网络编程--聊天程序(8)
		上一节已经完成了对用户的身份验证了,既然有了验证,那么接下来就能对不同的客户端进行区分了,所以这一节讲实现私聊功能.就是通过服务器对客户端的数据进行转发到特定的用户上, 实现私聊功能的聊天程序 实现的 ... 
随机推荐
- rest framework 视图,路由
			视图 在上面序列化的组件种已经用到了视图组件,即在视图函数部分进行逻辑操作. 但是很明显的弊端是,对每个表的增删改查加上 单条数据,需要用到 2个类 5个方法(增删改查,单数据查)才可以完整的实现,当 ... 
- BZOJ 4030: [HEOI2015]小L的白日梦
			4030: [HEOI2015]小L的白日梦 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 172 Solved: 39[Submit][Statu ... 
- 「CF1154F」Shovels Shop【背包DP】
			题目链接 [洛谷传送门] 题解 非常简单的背包. \(f[i]\)表示购买\(i\)个物品所需要最少的花费. 不考虑免费的限制条件,那么一定是选择前\(k\)个双鞋子. 那么加入免费的条件,那么还是要 ... 
- python学习day12 函数Ⅳ (闭包&内置模块)
			函数Ⅳ (闭包&内置模块) 1.内置函数(补充) lambda表达式也叫匿名函数. 函数与函数之间的数据互不影响,每次运行函数都会开一个辟新的内存. item = 10 def func(): ... 
- 解决远程连接MongoDB出现错误
			前言:最近准备学习下MongoDB,安装什么的都已经弄完了,想远程连接来管理MongoDB,用的软件是robo 3t 第一次连的时候就出错误了 大概意思是连接失败,解决如下 第一步,首先检查你的服务器 ... 
- Java多线程_复习(更新中!!)
			java多线程的常见例子 一.相关知识: Java多线程程序设计到的知识: (一)对同一个数量进行操作 (二)对同一个对象进行操作 (三)回调方法使用 (四)线程同步,死锁问题 (五)线程通信 等等 ... 
- 状态压缩动态规划  状压DP
			总述 状态压缩动态规划,就是我们俗称的状压DP,是利用计算机二进制的性质来描述状态的一种DP方式 很多棋盘问题都运用到了状压,同时,状压也很经常和BFS及DP连用,例题里会给出介绍 有了状态,DP就比 ... 
- npm install 之前做的事
			在一个项目目录中,npm install之前,需要npm init,npm init会问你几个问题,有的需要输入,不想输入的一路回车就行,之后会自动创建一个package.json文件,有了这个pac ... 
- LFYZ-OJ ID: 1024 火车站
			火车过站 问题描述 火车从始发站(称为第1站)开出,在始发站上车的人数为a,然后到达第2站,在第2站有人上.下车,但上.下车的人数相同,因此在第2站开出时(即在到达第3站之前)车上的人数保持为a人.从 ... 
- 第二节:框架前期准备篇之AutoFac常见用法总结
			一. 说在前面的话 凡是大约工作在两年以上的朋友们,或多或少都会接触到一些框架搭建方面的知识,只要一谈到框架搭建这个问题或者最佳用法这个问题,势必会引起一点点小小的风波,我说我的好,他说他的好,非常容 ... 
