php选择不重复记录,php – 从两个表中选择而不重复所有值

让我自己澄清一下,我的问题是“如何从绑定单个表和交叉引用表中选择行而不重复值?”

现在我有三个表,一个交叉引用表和两个单表:

Table jobs

╔══════════╦══════════════════════════╗

║ job_id ║ details ║

╠══════════╬══════════════════════════╣

║ 1 ║ Looking for hire... ║

║ 2 ║ We need help!... ║

║ 3 ║ We are a store that... ║

║ 4 ║ Help wanted... ║

╚══════════╩══════════════════════════╝

Table job2pos

╔═══════════╦═════════════╗

║ job_id ║ position_id ║

╠═══════════╬═════════════╣

║ 1 ║ 10 ║

║ 2 ║ 10 ║

║ 2 ║ 12 ║

║ 3 ║ 11 ║

║ 3 ║ 13 ║

║ 4 ║ 10 ║

╚═══════════╩═════════════╝

Table positions

╔═══════════════╦═══════════════╗

║ position_id ║ position_name ║

╠═══════════════╬═══════════════╣

║ 10 ║ waitress ║

║ 11 ║ cashier ║

║ 12 ║ cook ║

║ 13 ║ chef ║

╚═══════════════╩═══════════════╝

当我执行此查询时:

$sql = "SELECT jobs.details, positions.name AS position FROM jobs

INNER JOIN job2pos ON jobs.job_id = job2pos.job_id

INNER JOIN positions ON job2pos.position_id = positions.position_id

WHERE job2pos.job_id IN (2)";

...

print_r($stmt->fetchAll(\PDO::FETCH_ASSOC));

我得到以下内容:

Array(

[0] => Array ([details] => We need help!...

[position] => Waitress)

[1] => Array ([details] => We need help!...

[position] => Cook)

)

现在我为同一份工作获得了2行,但我想要的是类似于此的东西:

Array(

[0] => Array ([details] => We need help!...

[position] => Array ([0] => Waitress

[1] => Cook)

)

)

>如果你能指出我的代码中有一些不必要的代码,那就太好了.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值