nosql聚合嵌套查询,嵌套查询和集合查询

SQL里面的嵌套查询语句怎么写?

1,简单子查询;

公司主营业务:网站建设、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联建站是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联建站推出克拉玛依免费做网站回馈大家。

select name,age from person

where age

(

select age from person

where name = '孙权'

)

2,in嵌套查询;

select name from person

where countryid in

(

select countryid from country

where countryname = '魏国'

)

3,some嵌套查询

select name from person

where countryid = some --用等号和以下查询到的值比较,如果与其中一个相等,就返回

(

select countryid from country

where countryname = '魏国'

)

4,all嵌套查询

select name from person

where countryid all --当countryid大于以下返回的所有id,此结果才为True,此结果才返回

(

select countryid from country

where countryname = '魏国'

)

5,exits嵌套查询

SELECT * FROM Person

WHERE exists

(

SELECT 1 --SELECT 0 SELECT NULL 返回结果都一样,因为这三个子查询都有结果集返回,因此总是True SELECT * FROM Person照常执行

) 

但是如果子查询中因为加了条件而没有结果集返回,则主语句就不执行了:

SELECT * FROM Person

WHERE exists

(

SELECT * FROM Person

WHERE Person_Id = 100 --如果不存在Person_Id的记录,则子查询没有结果集返回,主语句不执行

)

SQL 嵌套查询

这样就可以呀你试试

select PRD_NO as '货品代号', NAME AS '货品名称',UT AS '主单位',(case when KND='2' THEN '制成品' WHEN KND='3' THEN '半成品' else to_char(knd) END )

from PRDT

where PRD_NO not in ( SELECT PRD_NO from MF_BOM) and (KND='2' OR KND='3')

在SQL中,对嵌套查询的处理原则是

1,在使用子查询的时候要用括号把查询语句括起来,

2、子查询不能查询text,image字段

3、子查询里还可以包括子查询,最多可以嵌套32层。

4、在where 子句与having 子句都可以用


网站标题:nosql聚合嵌套查询,嵌套查询和集合查询
标题网址:http://azwzsj.com/article/dsgojop.html