php 查询 sql 值,php – Sql从另一个查询中选择多个值

我在php-

mysql中有三个表

产品,product_fact,其实

架构是这样的

制品

id , name (1000 records)

例如-

id | name

-------+--------

1125 | key chain

1135 | bikes

1145 | cars

id =具有不同的产品ID号,每个产品都有唯一的ID,

name =产品名称

product_fact

product_id, fact_id

product_id =这与products表中的id相同

fact_id =这是事实id每个产品都有一些事实,很多产品都有不止一个事实.

例如-

product_id | fact_id

------------+----------

1125 | 5

1125 | 7

1125 | 6

1135 | 8

1145 | 9

1145 | 2

事实

id , name

id = this is fact_id与表product_fact中的相同

name =这是事实的名称.

例如-

id | name

--------+---------

2 | black

8 | free

5 | sold

6 | coming soon

9 | new

现在我想选择与产品相关的特定事实名称,但是当我执行此查询时 – >

SELECT name

FROM fact

Where id = (SELECT fact_id

FROM product_fact

Where product_id='1125');

它说Subquery返回超过1行

但是,当我运行此查询时 – >

SELECT name

FROM fact

Where id = (SELECT fact_id

FROM product_fact

Where product_id='1135');

它给了我正确的输出:免费

我现在应该怎么做它应该显示其他产品的事实名称任何帮助,

还有什么我应该包括在我的查询..任何帮助

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值