[英]how to get sum of column value with inner join in one query?
i have one table name as a_ad_display in that i have following table 我有一个表名作为a_ad_display,因为我有以下表
advId | Displaytime
I have One a_advertise table with following collumn 我有一个带有以下列的a_advertise表
advertiseId| advertisename| mediaTypeId
I have one a_mediatype table with following collumn 我有一个带有以下列的a_mediatype表
mediaTypeId | medianame
1 | Image
2 | Animation
3 | video
there is multiple entry of advId in the a_display table a_display表中有advId的多个条目
i want to fetch the sum of adv display with their mediaType like how much video ,image and animation type of advertise in a_display table 我想使用他们的mediaType来获取adv显示的总和,例如a_display表中广告的视频,图像和动画类型
i have done this way 我已经这样
SELECT
mdtype.medianame AS _type,
SUM(mdtype.medianame = 'Image') AS _display
FROM
a_ad_display a
INNER JOIN a_advertise adv
ON adv.advertiseId = a.advId
INNER JOIN a_mediatype mdtype
ON mdtype.mediaId = adv.mediaTypeId
GROUP BY medianame ;
but i got following results 但是我得到了以下结果
but if write just sum(distinct mdtype.medianame) then its givng me error...so how can i get all the values of image video and animation in just one query? 但是,如果只写sum(distinct mdtype.medianame),那么它给我报错...那么,如何在一个查询中获得图像视频和动画的所有值?
SELECT
m.medianame,
COUNT(as.advId) as Total
FROM a_mediatype as m
INNER JOIN a_advertise as a ON a.mediaTypeId = m.mediaTypeId
INNER JOIN a_ad_display as ad ON ad.advId = a.advertiseId
GROUP BY m.mediaTypeId
Try this... 尝试这个...
SELECT mdtype.medianame as _type, SUM(mdtype.medianame) as _display
FROM a_ad_display a
INNER JOIN a_advertise adv ON ad.advertiseID=a.advId
INNER JOIN a_mediatype mdtype ON mdtype.mediaID=adv.mediaTypeId
GROUP BY _type
HAVING DISTINCT(_type)
You can try this 你可以试试这个
SELECT m.mediaTypeId,
MIN(m.medianame) AS `type`,
COUNT(m.mediaTypeId) AS `count`
FROM a_ad_display a LEFT JOIN
a_advertise d on d.advertiseId=a.advId LEFT JOIN
a_mediatype m on m.mediaId=d.mediaTypeId
GROUP BY m.mediaTypeId
Try this : 尝试这个 :
SELECT
m.medianame,
COUNT(as.advId) as Total
FROM a_mediatype as m
INNER JOIN a_advertise as a
ON a.mediaTypeId = m.mediaTypeId
INNER JOIN a_ad_display as ad
ON ad.advId = a.advertiseId
GROUP BY m.mediaTypeId
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.