对SQL查询中的两列进行计数


Count two columns in SQL query

我四处找了找,没有找到任何似乎可以解决我的问题的东西。

我有两个表latlista和latlike。我想基于latlista的查询,并计算相同ID在latlista表中的次数,这与下面的代码一起工作很好。

SELECT latlista.id, latlista.artist, latlista.lat, latlista.`user`, latlista.songadd, count(latlike.latid) AS LikeCount
FROM latlista LEFT JOIN latlike ON latlike.latid=latlista.id
GROUP BY latlista.id, latlista.artist, latlista.lat, latlista.`user`
ORDER BY LikeCount DESC

最新列表表如下所示:

ID
latid
user

现在,在相同的查询中,我还想使用我的会话变量MM_Username计算相同用户在相同的纬度上存在的次数。

这是可能的吗?

希望我的jiberich有任何意义,否则请问!

可能是这样的?如果我对你的问题理解正确的话……如果你需要修改这个,请告诉我。如果你提供了一些样本数据,我可以按照你的想法来构建它

SELECT 
    l.id, 
    l.artist, 
    l.lat, 
    l.`user`, 
    l.songadd, 
    count(l.latid) AS LikeCount,
    (SELECT COUNT(latlista.id) FROM latlista WHERE latlista.`user` LIKE "your_uer_name_here") as num_times
FROM latlista as l LEFT JOIN latlike ON latlike.latid=l.id
GROUP BY l.id, l.artist, l.lat, l.`user`
ORDER BY LikeCount DESC