关于mysql查询语句问题

请教下各路大神,为什么用select * 没问题,使用select customer_id会报错

SELECT
 *
FROM Customer,(SELECT COUNT(product_key) counts FROM Product) b
GROUP BY customer_id
HAVING COUNT(DISTINCT(product_key)) = counts

图片说明
图片说明图片说明

1个回答

报什么错误?Customer表和Product都有customer_id这个字段吗?有的话需要通过别名的方式,如select c.customer_id from Customer c

CFDN_CN
CFDN_CN 回复Json-Huang: 嗯,感谢
3 个月之前 回复
hjs218
Json-Huang 回复CFDN_CN: 联合查询查询条件Having需要确保查询的记录中包含对应的字段,select customer_id 则这个查询中是没有counts字段,也性能考虑也建议别用*,需要的字段一个个列举出来,可以通过别名方式
3 个月之前 回复
CFDN_CN
CFDN_CN 图片贴出来了,感觉跟执行顺序可能有关
3 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐