SQL-查找仅包含一个特定类型的内部联接

SQL-查找仅包含一个特定类型的内部联接,sql,mariadb,inner-join,Sql,Mariadb,Inner Join,我的数据库中有两个表(a,B)。1-N关系;每个 A可以有NB。 这是B的伪结构: B.id , B.type , B.foreign_key(for communication between A and B), B.price B.type可以在1-8之间,但我只想找到一个带1的A和一个带2的B记录(B.type的值) 例如,下图不是我的目标结果: 不过,我会跟进这个结果: 我写了这个查询,但它不完整。我的意思是有些援助有不同的B类型,其值不等于2,但这不是我的最终结果 SELECT

我的数据库中有两个表(
a,B
)。1-N关系;每个
A
可以有N
B
。 这是B的伪结构:

B.id , B.type , B.foreign_key(for communication between A and B), B.price
B.type可以在1-8之间,但我只想找到一个带1的A和一个带2的B记录(B.type的值)

例如,下图不是我的目标结果:

不过,我会跟进这个结果:

我写了这个查询,但它不完整。我的意思是有些援助有不同的B类型,其值不等于2,但这不是我的最终结果

SELECT B.id AS Bid. B.type AS Btype , A.id AS Aid
FROM A
INNER JOIN B ON A.id = B.foreign_key
WHERE B.B.type = 2

有什么建议吗?

也许这就是你想要的。希望能有帮助

 select b.id as bid
      , b.type as btype 
      , a.id as aid
      , count(*) 
   from a
  inner join b on a.id = b.foreign_key
  where b.type = 2
  group by b.id, b.type, a.id
 having count(*) = 1

为什么查询不完整?请添加更多示例表数据和预期结果-全部为格式化文本,而不是图像。您好。这还不清楚。用足够的单词和句子来解释。不要试图把事情塞进一句话里。PS对文本使用文本,而不是图像/链接。请阅读并采取行动。PS FKs和其他约束不需要查询。基本和结果表的含义是必要和充分的。