简单查询:

1、SELECT * FROM 表名称 WHERE 字段名 LIKE '查询内容'

1)、

SELECT * FROM member WHERE NickName LIKE '贝克汉姆':查询member表NickName字段值为'贝克汉姆'数据

2)、

SELECT * FROM member WHERE NickName LIKE '贝%':查询member表NickName字段值首位包含“贝”的数据

3)、

SELECT * FROM member WHERE NickName LIKE ‘%姆':查询member表NickName字段值末位包含“姆”的数据

4)、

SELECT * FROM member WHERE NickName LIKE '%克%':查询member表NickName字段值中间包含“克”的数据

汇总查询:

1、SELECT SUM(字段名) as '总积分' FROM 表名称WHERE 字段名,SUM用于计算总和

1)、

SELECT SUM(Source) as '总积分' FROM member WHERE Source:统计member表Source字段值总和

2、SELECT COUNT(字段名)  as '总人数' FROM 表名称,COUNT用去统计总数

1)、

SELECT COUNT(NickName)  as '总人数' FROM member :统计member 表NickName字段下的总人数

2)、

SELECT COUNT( DISTINCT NickName)  as '总人数' FROM member:统计member 表NickName字段下的总人数(去除重复数据)

3)、汇总统计会员注册时间,语句里面的year是按年统计,“CreateTime”是会员注册时间字段,TIMESTAMPDIFF是时间差函数,“now”是基于现在

SELECT id,TIMESTAMPDIFF(year,CreateTime,now()) from member ORDER BY TIMESTAMPDIFF(year,CreateTime,now()) DESC

3、SELECT MAX(字段名) as '最大值',MIN(字段名) as '最小值' FROM 表名称 ORDER BY 字段名  (ORDER BY是通过排序的方式展示),MAX、MIN用于展示最大最小值

1)、

SELECT MAX(Source) as '最高分',MIN(Source) as '最低分' FROM member ORDER BY Source:查询member表Source字段最大值和最小值

分组查询:

1、SELECT 字段名 as '积分' ,COUNT(字段名) as '积分人数' FROM 表名称 GROUP BY 字段名( GROUP BY是通过分组的方式展示)

1)、

SELECT Source as '积分' ,COUNT(Source) as '积分人数' FROM member GROUP BY Source:统计各积分拥有相同积分的人数  

带条件查询,

语法基本结构:SELECT  +展示数据(SUM(OrderFee)) +FROM 表(orderinfo ) + WHERE字段(StoreId = 100000000384) +展示方式(GROUP BY StoreId)+条件(HAVING COUNT(OrderNo)>100)或者

SELECT  +展示数据(SUM(OrderFee)) +FROM 表(orderinfo ) + WHERE字段(StoreId = 100000000384) +条件(HAVING COUNT(OrderNo)>100)+展示方式(ORDER BY StoreId)

1、SELECT 字段名,SUM(字段名) as '全部订单总金额' ,AVG(字段名) as '订单平均值',COUNT(字段名) as '订单总数' FROM 表名称GROUP BY 字段名

1)、

SELECT StoreId ,SUM(OrderFee) as '全部订单总金额' ,AVG(OrderFee) as '订单平均值',COUNT(OrderNo) as '订单总数' FROM orderinfo GROUP BY StoreId:根据店铺ID分组,展示全部订单、订单平均值、订单总数

2)、

SELECT StoreId ,SUM(OrderFee) as '全部订单总金额' ,AVG(OrderFee) as '订单平均值',COUNT(OrderNo) as '订单总数' FROM orderinfo GROUP BY StoreId  HAVING COUNT(OrderNo)>100:根据店铺ID分组,展示全部订单、订单平均值、订单总数,且保留订单总数大于100的数据

3)、

SELECT SUM(OrderFee) as '全部订单总金额' ,AVG(OrderFee) as '订单平均值',COUNT(OrderNo) as '订单总数' FROM orderinfo WHERE StoreId = 100000000384:统计出指定店铺下的全部订单总金额、订单平均值、订单总数

4)、

SELECT StoreId as '店铺ID',COUNT(OrderFee) as '金额人数' FROM orderinfo WHERE OrderFee>50 GROUP BY StoreId :根据店铺ID分组,统计订单金额大于50订单数

5)、

SELECT StoreId,AVG(OrderFee) FROM orderinfo GROUP BY StoreId ORDER BY AVG(OrderFee):根据店铺id分组,计算店铺订单均值排序

6)、

SELECT OrderFee ,OrderNo FROM orderinfo WHERE StoreId = 100000000384  HAVING OrderFee>100 ORDER BY OrderFee DESC:订单金额降序显示(大到小)

SELECT OrderFee ,OrderNo FROM orderinfo WHERE StoreId = 100000000384  HAVING OrderFee>100 ORDER BY OrderFee ASC:订单金额升序显示(小到大)

7)、

SELECT OrderFee,COUNT(OrderFee) FROM orderinfo WHERE StoreId = 100000000384 GROUP BY OrderFee :指定店铺按照订单金额排序且统计每档金额的订单数

8)、区间值查询,统计各区间订单值内的订单数,结果以区间值进行分组显示

select
case
when OrderFee is null or OrderFee < 100 then '100以内的订单'
when OrderFee >= 100 and OrderFee <=1000 then '100到1000的订单'
when OrderFee > 100000 then '大于10000的订单'
end
as name,
count(*) as num
from orderinfo
group by name;

2、组合条件查询

1)、查询订单价格区间90-100和190-200的订单数据(组合条件查询)

(SELECT *  from orderinfo WHERE Productfee > '90' and Productfee < '100') union
(SELECT * from orderinfo WHERE Productfee > '190' and Productfee < '200');

3、跨表查询

1)、统计memberaccount 表里积分数大于100的用户,且(查询)用户在member 表内City值为Changsha(跨表查询)

SELECT MemberID, TotalPoints FROM memberaccount where MemberID  in (SELECT id FROM member WHERE City='Changsha') GROUP BY MemberID HAVING TotalPoints>100

2)、统计memberaccount表TotalFee,member表CreateTime,且以MemberId分组显示。分析查询语句,表后带字段名,FROM一个表JOIN一个表,WHERE接不同字段名但相信数据,这样两个表的数据才能正常匹配

SELECT memberaccount.MemberId , memberaccount.TotalFee, member.CreateTime FROM memberaccount JOIN member WHERE memberaccount.MemberId = member.Id GROUP BY memberaccount.MemberId

4、跨库查询

1),统计`xkdcore_newfat_ordermanage`库`orderinfo`表内订单数,已MemberId方式分组,且展示订单数大于200的MemberId。统计基于展示的MemberId,查询`xkdcore_newfat_membermanage`库`memberaccount`表下对应MemberId的积分和消费金额

SELECT MemberID, TotalPoints,TotalFee FROM `xkdcore_newfat_membermanage`.`memberaccount` where MemberID  in (SELECT MemberId FROM `xkdcore_newfat_ordermanage`.`orderinfo` GROUP BY MemberID  HAVING COUNT(OrderNo)>200) GROUP BY MemberID 

跨库查询的的关键是,需要在查询语句中写入库名,如“xkdcore_newfat_membermanage”、“xkdcore_newfat_ordermanage”,然后从一个查询结果中提取信息进行二次查询。这里是先查出MemberId,再通过MemberId查询出积分和消费金额

仅执行查询订单数查询语句

SELECT MemberId FROM `xkdcore_newfat_ordermanage`.`orderinfo` GROUP BY MemberID  HAVING COUNT(OrderNo)>200

sql查询语句典例整理的更多相关文章

  1. MySQL 笔记整理(1) --基础架构,一条SQL查询语句如何执行

    最近在学习林晓斌(丁奇)老师的<MySQL实战45讲>,受益匪浅,做一些笔记整理一下,帮助学习.如果有小伙伴感兴趣的话推荐原版课程,很不错. 1) --基础架构,一条SQL查询语句如何执行 ...

  2. MySQL 笔记整理(2) --日志系统,一条SQL查询语句如何执行

    笔记记录自林晓斌(丁奇)老师的<MySQL实战45讲> 2) --日志系统,一条SQL查询语句如何执行 MySQL可以恢复到半个月内任意一秒的状态,它的实现和日志系统有关.上一篇中记录了一 ...

  3. SQL查询语句大全集锦

    SQL查询语句大全集锦 一. 简单查询 简单的Transact-SQL查询只包括选择列表.FROM子句和WHERE子句.它们分别说明所查询列.查询的 表或视图.以及搜索条件等. 例如,下面的语句查询t ...

  4. (转)经典SQL查询语句大全

    (转)经典SQL查询语句大全 一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql s ...

  5. 转: 从Mysql某一表中随机读取n条数据的SQL查询语句

    若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1)).例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机 ...

  6. 经典SQL查询语句大全

    一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数 ...

  7. SQL查询语句大全及其理解

    转自:https://www.cnblogs.com/1234abcd/p/5530314.html 一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删 ...

  8. 从Mysql某一表中随机读取n条数据的SQL查询语句

    若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1)).例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机 ...

  9. mysql数据库系统学习(一)---一条SQL查询语句是如何执行的?

    本文基于----MySQL实战45讲(极客时间----林晓斌 )整理----->https://time.geekbang.org/column/article/68319 一.第一节:一条sq ...

  10. sql查询语句如何解析成分页查询?

    我们公司主要mysql存储数据,因此也封装了比较好用mysql通用方法,然后,我们做大量接口,在处理分页查询接口,没有很好分查询方法.sql查询 语句如何解析成“分页查询”和“总统计”两条语句.可能, ...

随机推荐

  1. 平滑升级mariadb

    问题 Centos7自带的MariaDB版本是5.5 ,版本过于老旧,现想升级到最新版本,且数据不丢失 措施 备份原来的数据 mysqldump -u root -p --all-databases ...

  2. 3. 使用sql查询csv/json文件内容,还能关联查询?

    1. 简介 我们在前面的文章提到了calcite可以支持文件系统的数据源适配, 其实官方已经提供了相应的能力, 其支持csv和json的查询适配, 废话不多说, 直接展示. 2. Maven < ...

  3. DPDK简介和原理

    本文分享自天翼云开发者社区<DPDK简介和原理>,作者:s****n DPDK是一种绕过内核直接在用户态收发包来解决内核性能的瓶颈技术. 什么是中断 了解DPDK之前,首先需要先了解什么是 ...

  4. Nmap 图形界面使用

    Nmap 图形界面的使用 Zenmap,作为Nmap的图形用户界面(GUI),为用户提供了一个直观.易用的方式来执行网络扫描和分析.以下是一个关于如何使用Zenmap的详细指南. 扫描主机 使用Zen ...

  5. Common.Logging+log4net搭建项目日志框架

    原文参考链接:https://www.cnblogs.com/heys/p/5787123.html   Common.Logging+(log4net/NLog/) common logging是一 ...

  6. 安川YASKAWA机器人主板维修方法合集

    安川机械手板卡故障分析与YASKAWA机械臂主板维修步骤 1. 确认故障现象:首先,我们需要详细了解安川机器人主板故障现象,包括但不限于工作异常.运行错误.速度变慢等. 2. 拆卸主板:根据故障现象, ...

  7. mysql常用优化

    SQL优化是一个分析,优化,再分析,再优化的过程.站在执行计划的角度来说,我们这个过程,就是在不断的减少rows的数量. 1.建索引 2.减少表之间的关联 3.优化 sql,尽量让 sql 很快定位数 ...

  8. 事务中无法切换数据源?DataSourceSwitchInvoker:轻松实现多数据源切换执行工具类

    背景: 在有标注为@Transactional的类或公共方法中(传播特性,如:NOT_SUPPORTED.SUPPORTS.REQUIRED[默认值].REQUIRES_NEW)执行数据源切换可能不成 ...

  9. c# virtual 关键字 虚方法

    1.简单的说,虚方法就是可以被子类重写的方法,如果子类重写了虚方法,那么运行时将使用重写后的逻辑,如果没有重写,则使用父类中虚方法的逻辑 class Program { static void Mai ...

  10. linux ssh 免密登录

    1.服务器端开启密钥登录模式 $ vim /etc/ssh/sshd_config # 是否允许 root 远程登录 PermitRootLogin yes # 密码登录是否打开 PasswordAu ...