5 개의 검토 사이트에 대한 데이터를 확인하고 site_id, review_count & review_average를 반환하는 쿼리가 있습니다.mysql 쿼리에 결과가없는 경우 공백 데이터를 채우십시오.
리뷰 사이트에 대한 데이터가없는 경우 평균 &에 대해 0을 반환하고 싶습니다.
mysql 쿼리에서 가능합니까?
MySQL의 :
SELECT rrss.review_site_id,rrss.review_count,rrss.review_average,rs.name
FROM rooftops_review_sites_snapshots rrss
LEFT JOIN review_sites rs ON rrss.review_site_id = rs.id
WHERE rrss.rooftop_id = 185
AND rrss.import_id = 16
AND rrss.review_site_id IN (31,30,12,10,29)
전류 출력 :
Array
(
[google] => Array
(
[review_site_id] => 31
[review_count] => 24
[review_average] => 3.80
)
[edmunds] => Array
(
[review_site_id] => 12
[review_count] => 8
[review_average] => 4.50
)
)
원하는 출력 :
Array
(
[google] => Array
(
[review_site_id] => 31
[review_count] => 24
[review_average] => 3.80
)
[edmunds] => Array
(
[review_site_id] => 12
[review_count] => 8
[review_average] => 4.50
)
[yelp] => Array
(
[review_site_id] => 31
[review_count] => 0
[review_average] => 0
)
[dealerrater] => Array
(
[review_site_id] => 12
[review_count] => 0
[review_average] => 0
)
[cars] => Array
(
[review_site_id] => 12
[review_count] => 0
[review_average] => 0
)
)
, 술어로 전환하고'LEFT JOIN'에 다른 테이블을 사용합니다. –