subselect mysql_mysql-将值传递给Subselect

SELECT

u.*,

GROUP_CONCAT(DISTINCT f.shot_id SEPARATOR ",") AS ownFavorites,

GROUP_CONCAT(DISTINCT st.shot_id SEPARATOR ",") AS ownStars,

GROUP_CONCAT(DISTINCT s.id SEPARATOR ",") AS ownShots,

( SELECT AVG(p.count)

FROM points p

LEFT JOIN shots s ON s.user_id = **U.ID** AND p.shot_id = s.id

WHERE date >= DATE_SUB(CURDATE(),INTERVAL 2 DAY)

) AS attention,

( SELECT SUM(p.count)

FROM points p

LEFT JOIN shots s ON s.user_id = **U.ID** AND s.id = p.shot_id

) AS popularity

FROM users u

LEFT OUTER JOIN shots s ON s.user_id = u.id

LEFT OUTER JOIN favorites f ON f.user_id = u.id

LEFT OUTER JOIN stars st ON st.user_id = u.id

WHERE u.username = ?;

我得到了两个使用参数u.id的子选择(在查询中标记).如果我做这样的SQL,它将生成类似的东西:

#1054 - Unknown column 'u.id' in 'on clause'

意思是,在子选择中未定义u.id id.但是在MainSelect中,我从存在u.id的users表中进行选择.

对我的问题:有没有一种方法可以将选定的u.id值传递给具有普通sql的Subselects?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值