一个表的 MYSQL 查询与另一个表存在多对多关系

标签 mysql database

我在 MySQL 中有一个表,其中包含不同年份创建的产品。属性包括 id、name 和 year。我有另一个表,该表在具有属性 id、p1id 和 p2id 的产品“DependentProduct”之间存在关系,因此 id=p2id 的产品依赖于 id=p1id 的产品。 我试图找出 2000 年创建的所有产品,2001 年创建的产品中有多少依赖于它们。所以如果我在 2000 年创建了 10 个产品,在 2001 年创建了 20 个产品,我想得到这样的东西:

pid    2001
1       5
2       10  
3       9
.       .
.       .
10      3

意味着 2001 年创建的产品中有 5 个依赖于 pid 1,这是 2000 年创建的产品。也可能是 2001 年创建的某些产品依赖于 2000 年的许多产品。

非常感谢您的帮助

最佳答案

使用连接

SELECT t2.* FROM table1 t1
INNER JOIN table2 t2 ON (t1.id = t2.tbl1_id)
WHERE t1.date = '2011-08-20' 

关于一个表的 MYSQL 查询与另一个表存在多对多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7364308/

相关文章:

sql-server - SQL Server 2008 数据库镜像疯狂

mysql - 使用二进制排序规则有什么影响?

php - PDO UPDATE 创建一个新记录而不是更新一个记录

mysql - 我想在动态查询中的变量中存储一个值,然后想在检查该变量时运行另一个查询

mysql - 想要通过 group by 函数在单个查询中从三个表中获取所有数据

php - 将查询转换为 codeigniter 格式

c - c中的"Database"(不是实际的数据库,只是一个简单的事情)

php - PHP 脚本是否需要等待 MySql 触发器完成?

php - Ionauth 用户首次登录+重新发送激活邮件

java - 如何将firebase数据库中的键和值放入hashmap?