问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

mysql数据库sql查询语句:多条件判断

发布网友 发布时间:2022-04-23 10:15

我来回答

7个回答

懂视网 时间:2022-04-30 16:03

1.查询数据

   select  属性列表

            from  表名和视图列表

            [where  条件表达式1]

            [group by 属性名1  [having 条件表达式2] [with rollup最后加一条记录是上面记录的总和]]  //按照属性名1指定的字段分组,有having则要满足条件表达式2

     [order  by 属性名2  [asc|desc]]

      where查询条件:

      比较          =、<、<=、 >、>=、!=、<>、!>、!<

      指定范围     between and、not between and

      指定集合     in、not in

      匹配字符     like、not like <%:代表任意长度字符串,_:代表单个字符>

      是否为空值  is null、is not null

eg:select * from test0 where id in (1001,1004,1005);

     select * from test0 where id between 1002 and 1005;

   select * from test0 where id < 1004 and name like ‘h_h_‘; //两个条件均满足

     select * from test0 where id < 1004 or name like ‘h%‘; // 满足其中一个便可

   select distinct name from test0;   //查询结果不重复 

   select id,group_concat(name) from test0 group by name;//将name分组中指定字段值都显示出来

   select name,count(name) from test0 group by name;//将name分组的每一组记录数统计出来

   select name,count(name) from test0 group by name having count(name) > 1; //显示记录数大于1的

     having表达式是作用于分组后的记录,而where作用于表或者视图。

   select name,count(name) from test0 group by name with rollup;

     select * from test0 limit 3; //只显示3条记录

     select * from test0 limit 1,3; //从第2条记录起显示3条记录

     

MySQL基本操作-SQL查询语句

标签:

热心网友 时间:2022-04-30 13:11

1、创建测试表,

create table test_person(id int, RMB int);

2、插入测试数据

insert into test_person values(1,180);

insert into test_person values(2,170);

insert into test_person values(3,290);

insert into test_person values(4,160);

insert into test_person values(5,299);

insert into test_person values(6,266);

insert into test_person values(7,155);

3、查询表中所有记录,select t.* from test_person t,

4、编写sql,汇总每个vip类型的用户数,

select vip_type, count(distinct id)

  from (select case when RMB>100 and RMB<200 then 'VIP1' when RMB>200 then 'VIP2' end as vip_type, id

          from test_person) t

  group by vip_type

热心网友 时间:2022-04-30 14:29

在sql中使用 case when then可以达到多条件判断的目的

例子
表格 每个国家的人口数据
国家(country) 人口(population)
中国 600
美国 100
加拿大 100
英国 200
法国 300
日本 250
德国 200
墨西哥 50
印度 250
根据这个国家人口数据,统计亚洲和北美洲的人口数量。
sql语句
SELECT SUM(population),
CASE country
WHEN '中国' THEN '亚洲'
WHEN '印度' THEN '亚洲'
WHEN '日本' THEN '亚洲'
WHEN '美国' THEN '北美洲'
WHEN '加拿大' THEN '北美洲'
WHEN '墨西哥' THEN '北美洲'
ELSE '其他' END
FROM Table_A
GROUP BY CASE country
WHEN '中国' THEN '亚洲'
WHEN '印度' THEN '亚洲'
WHEN '日本' THEN '亚洲'
WHEN '美国' THEN '北美洲'
WHEN '加拿大' THEN '北美洲'
WHEN '墨西哥' THEN '北美洲'
ELSE '其他' END;

结果
洲 人口
亚洲 1100
北美洲 250
其他 700

热心网友 时间:2022-04-30 16:03

select
case when rmb>100 and rmb <=200 then 'VIP1' else 'VIP2' end 级别,
sum(case when rmb>100 and rmb <=200 then 1 else 0 end) 人数
from 表名
group by case when rmb>100 and rmb <=200 then 'VIP1' else 'VIP2' end

热心网友 时间:2022-04-30 17:55

select t.vip,count(*) from(select case when rmb>100 and rmb < 200 then 'vip1' when rmb>200 then 'vip2' end 'vip',rmb from test) t group by t.vip追问我的case when then 怎么不能用?

追答不应该啊 case when then when then....(else) end 注意后面有个end 我已经运行成功了

热心网友 时间:2022-04-30 20:03

select if(rmb>100,if(rmb>200,2,1),0) as tt,count(1) as cnt from yourtable group by tt;

热心网友 时间:2022-04-30 22:27

select distinct (select count(*) from table where 账户金额>100 and 账户金额<200) as vip1,
(select count(*) from table where 账户金额>200) as vip2,
form table
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
北京协和售后 spcp代收费是什么 Doppelherz/双心 铁元营养口服液 500ml-详细介绍 淘宝阿尔卑斯店的德国铁元怎么样? 后面的肩膀缝疼因为什么 刮痧后一躺下肩膀疼的要命 “亭台六七座”的出处是哪里 mahini 是什么意思? 外阴溃烂了怎么办 外阴溃疡,溃疡处伤口不愈合,可以用什么药 SQL 多条件查询语句 SQL语句分条件查询 SQL多个条件查询语句 sql多条件查询语句 sql动态条件查询语句 SQL语句怎样进行数据库字段的条件查询? SQL语句where多条件查询怎么写 SQL语句如何进行数据库字段的条件查询? sql查询语句大全 sql语句根据条件查询所有数据 电脑屏幕总是闪怎么解决?急 sql中多条件进行查询,查询语句该怎么写? 有什么办法可以解决电脑闪屏的现象呢 SQL语句查询条件一个字段=多个值怎么写 SQL中多条件同时查询语句怎么写? CRT显示器图像闪烁或抖动怎么办? 显示器画面不停地轻微抖动,有什么办法 电脑屏幕上的图像总是闪动怎么办? 香蕉有没有种子啊?? 香蕉有没有籽? SQL语句怎样查询一个范围 如何将Sql语句作为条件进行查询 世界上一共有几次重大的经济危机? 历史上经历了哪几次全球性经济危机 全球经济危机爆发的背景是什么以及具体表现是什么? 全球经济危机的介绍 给别人花呗套现引响网商贷吗 世界上出现了几次经济危机啊! 朋友要花呗给我20000元,要我余额给他,对我有没有影响? 全球性经济危机对资本主义世界有什么影响? linux下mv 多个文件到各自文件夹,如何操作? 世界上总共发生过多少次经济危机?具体时间是什么时候? 1929年全球经济危机是什么。 详细介绍一下 全球性金融危机已经爆发过几次?各是什么时间? 全球经济危机发生在什么时候?起始时间? 面对全球经济危机我们该怎么办? 世界性的经济危机出现了多少次,分别是 linux中,用mv命令移动多个目录 2022年会发生全球经济危机吗? 世界上的四次经济危机分别是哪些因素造成的