⑴ sql 语句查找某字段等于多个可能值
2种写法
1)
SELECT * FROM `order_status` WHERE order_status_id= 3 OR order_status_id = 16
2)
SELECT * FROM `order_status` WHERE order_status_id IN (3, 16)
⑵ SQL 多表之间的查询,同一字段多个条件。
可以分两种语句
--1.查询有某指定证件组合的人,下列就是同时身份证、驾驶证、健康证的人 或者 同时拥有身份证、劳保证的人
selecta.cno,a.cname
fromhr_epm_maina
innerjoinhr_epm_certbona.cno=b.cno
groupbya.cno,a.cname
havingsum(casewhenb.namein('身份证','驾驶证','健康证')then1esle0end)=3
orsum(casewhenb.namein('身份证','劳保证')then1esle0end)=2
如果你想查询同时拥有身份证、驾驶证、健康证、劳保证。可以在语句后面继续添加OR,例如
or sum(case when b.name in('身份证','驾驶证','健康证','劳保证') then 1 esle 0 end)=4 此时必须等于4,因为必须同时要满足有4本证。 希望这样写你能明白这语句
--2.查询拥有所有证件的人
selecta.cno,a.cname
fromhr_epm_maina
innerjoinhr_epm_certbona.cno=b.cno
innerjoin(selectzhengjianSum=count(distinctname)fromhr_epm_cert)con1=1
groupbya.cno,a.cname,c.zhengjianSum
havingsum(1)=c.zhengjianSum
上述语句:select zhengjianSum=count(distinct name) from hr_epm_cert 的意思是。系统总的证件类型有多少本。加入有10本。那么上述语句就是同时拥有这10本证的人。
希望这样的回答能帮助到你,谢谢!
⑶ sql如何根据一个字段的多个值查询
具体方法如下:
假定表名test,列id是数值类型。
用同一个字段的多个值作为条件来查询可以使用in或者or。
具体语句如下:
1、select * from test where id in (1,2,3)
2、select * from test where id = 1 or id =2 or id = 3
显然第一种方法更简便。
PS: 如果如你消息所说,有一个选课表test,学生号id,所选课程名name,那么,检索同时选择了美术、体育、音乐三门课程的学生id的语法如下:
select a.id from test a,test b,test c
where a.id = b.id and b.i
d = c.id and a.name = '美术' and b.name = '体育' and c.name = '音乐';
问题的关键,在于test表通过别名做三次关联查询。
⑷ SQL语句查询条件一个字段=多个值怎么写
假定表名test,列id是数值类型。用同一个字段的多 个值作为条件来查询可以使用in或者or。
具体语句如下:
1、select * from test where id in (1,2,3)
go
2、select * from testwhere id= 1orid =2orid=3
go
布局化查询言语(Structured Query Language)简称SQL(发音:/es kju el/ S-Q-L),是一类特殊目标的编程言语,是一类数据库查询和法式设想言语,用于存取数据以及查询、更新和办理关系数据库系统;同时也是数据库脚本文件的扩展名。
(4)sql一个字段等于多个条件扩展阅读
SQL命令的类型
1、数据定义语言(DDL)
用于创建和重构数据库对象,比如创建(create table/Index/view)、修改(alter table/index/view)和删除(drop table/index/view)表。
2、数据操作语言(DML)
用于操作关系型数据库对象内部的数据,基本命令插入(Insert)、更新(Update)和删除(Delete)。
3、数据查询语句(DQL)
是现代关系型数据库用户最关注的部分,就一个命令查询(Select)。
4、数据控制语言(DCL)
用于控制对数据库里数据的访问,通常用于创建与用户访问相关的对象,以及控制用户的权限,如修改密码(Alter password)、权限(Grant)。
⑸ SQL语句查询同一字段满足多个值如何写呢
可以、
select * from tel where phone in('0773','0775') order by num desc
⑹ sql 中如何查询一个字段符合两个条件
sql中如何查询一个字段符合两个条件的方法。
如下参考:
1.在计算机中,打开Foxtable软件,新建一个表格,如学生评价结果,并输入数据,如下图所示。
⑺ SQL语句 一个字段查询两个条件
select
*
from
[表名]
where
[
字段名
]
in
('裤子','鞋')
就是这个
*代表查询所有的内容,如果你只要查询产品型号的话就把*改成字段名产品弄号。
⑻ sql中一个字段在多个条件下查询并且生成多列
with t1 as
(
--去重后的distrib
select distinct(distrib) distrib from table1 where DATEPART(M,date)>=1 and DATEPART(M,date)<=6
),t2 as
(
--1-3月数据
select distrib,COUNT(mbr) as a from table1 where DATEPART(M,date)>=1 and DATEPART(M,date)<=3
group by distrib
),t3 as
(
--4-6月数据
select distrib,COUNT(mbr) as b from table1 where DATEPART(M,date)>=4 and DATEPART(M,date)<=6
group by distrib
)select t1.distrib,t2.a,t3.b from t1
left join t2 on t1.distrib=t2.distrib
left join t3 on t1.distrib=t3.distrib
⑼ mysql中一个字段同时满足多个条件,(3个以上)
SELECT
t.file_id
FROM
app_polly_file_labels t
WHERE
t.style = '清新'
or t.style = '甜美'
or t.style = '韩潮来袭'
GROUP BY t.file_id
HAVING count(t.file_id)=3
或者
SELECT
a.file_id
FROM
app_polly_file_labels a
INNER JOIN app_polly_file_labels b ON a.file_id = b.file_id
INNER JOIN app_polly_file_labels c ON a.file_id = c.file_id
WHERE
a.style ='清新'
AND b.style ='甜美'
AND c.style ='韩潮来袭'
(9)sql一个字段等于多个条件扩展阅读:
sql常用的复杂查询语句
一、选择指定的列
select Sno as 学号,Sname as 姓名 from student
select Sno,Sname from student
二、查询全部列
select * from student
三、对查询后的指定列进行命名
select Sname as 姓名,(2014-Sage) as 出生年 from student
select Sname ,(2014-Sage) from student
四、消除取值重复的行
select distinct Sno as 选修了课程的学生学号 from SC
select distinct Sno from SC
五、选择表中若干元组,满足条件的
select Sname as 学生姓名 from student where Sdept='IS'
参考链接:SQL语句大全
⑽ SQL语句查询条件“一个字段=多个值”怎么写
select * from otim where sheetid in(1,2,3)