当前位置: 代码迷 >> Sql Server >> ,Sql语句有关问题
  详细解决方案

,Sql语句有关问题

热度:22   发布时间:2016-04-27 13:10:04.0
求助,Sql语句问题
我碰到一个问题,很纠结,来请教一下大家

我有一个故障表 tabguzhang 为父表, 一个故障征兆表 tabZhengZhao 为子表
一个故障,对应 N 个征兆。

我现在要做一个查询,用户录入 4 个征兆,要求搜索出 有这 4 个征兆的所有故障

故障表结构:
id varchar(50)
note varchar(50)

征兆表结构:
id varchar(50)
GuzhangID varchar(50)
zhengzhao varchar(100)

请问这个sql怎么写。谢谢


------解决方案--------------------
SQL code
SELECT * FROM  [tabguzhang] G WHERE G.ID IN (SELECT G.ID FROM [tabzhengzhao] WHERE zhengzhaoID=4)
------解决方案--------------------
SQL code
SELECT A.* FROM 故障表 AS AINNER JOIN(    SELECT B.GUZHANGID,COUNT(1) AS NUM FROM 征兆表 AS B    WHERE B.ZHENGZHAO IN('A','B','C','D')    GROUP BY B.GUZHANGID) AS CON A.ID=C.GUZHANGIDWHERE C.NUM >= 4
  相关解决方案