File: C:/Users/fred/AppData/Local/Microsoft/OneDrive/26.168.0830.0006/WebAssets/sql/people_list_v2.sql
-- @query people_list_v2
-- @db media 22.0
-- @with photos_only
-- @end-with
-- @with entity_filter
-- @param entity_ids TEXT
-- @end-with
SELECT
re.primaryEntityId AS entity_id,
COUNT(DISTINCT rel.driveItemId) AS photo_count,
MAX(CASE WHEN re.entityId = re.primaryEntityId THEN re.isPinned ELSE 0 END) AS is_pinned,
MAX(CASE WHEN re.entityId = re.primaryEntityId THEN re.isHidden ELSE 0 END) AS is_hidden,
MAX(CASE WHEN re.entityId = re.primaryEntityId THEN re.displayName END) AS display_name,
MAX(CASE WHEN re.entityId = re.primaryEntityId THEN re.representativeItemId END) AS representative_item_id,
MAX(CASE WHEN re.entityId = re.primaryEntityId THEN re.coverPhotoId END) AS cover_photo_id
FROM media.recognized_entities AS re
JOIN recognized_entity_lookup AS rel ON rel.entityId = re.entityId
JOIN media.media_properties AS cloud ON rel.driveItemId = cloud.driveItemId
JOIN media.media_libraries AS drive ON cloud.driveId = drive.driveId
WHERE cloud.isTombstoned = 0
AND drive.libraryType = 'Gallery'
AND cloud.libraryTypeId = 1
AND cloud.takenDateTime IS NOT NULL
-- @with photos_only
AND cloud.photo IS NOT NULL
AND cloud.video IS NULL
-- @end-with
-- @with entity_filter
AND re.primaryEntityId IN (SELECT value FROM json_each(?entity_ids))
-- @end-with
GROUP BY re.primaryEntityId
ORDER BY photo_count DESC