LEFT JOIN hierarchy opdg_hier ON opdg_hier.parentid = object.id AND opdg_hier.name = 'collectionobjects_common:objectProductionDateGroupList' AND opdg_hier.pos = 0
LEFT JOIN structureddategroup sdg ON sdg.id = opdg_hier.id
), related_media AS (
- SELECT
+ SELECT DISTINCT ON (object.csid)
object.csid AS objcsid,
media.objectcsid AS mediacsid
FROM related_objects object
INNER JOIN relations_common media ON media.subjectcsid = object.csid AND media.objectdocumenttype = 'Media'
INNER JOIN misc ON misc.id = media.id AND misc.lifecyclestate != 'deleted'
+ INNER JOIN hierarchy hier ON hier.name = media.objectcsid
+ INNER JOIN collectionspace_core core ON core.id = hier.id
+ ORDER BY object.csid, core.updatedat DESC
)
SELECT
acq.acquisitionreferencenumber,
</parameter>
<queryString language="SQL">
<![CDATA[WITH media AS (
- SELECT
+ SELECT DISTINCT ON (relation.subjectcsid)
relation.subjectcsid,
relation.objectcsid AS mediacsid
FROM media_common media
INNER JOIN misc ON misc.id = media.id AND misc.lifecyclestate != 'deleted'
INNER JOIN relations_common relation ON relation.objectcsid = hier.name
AND (relation.subjectdocumenttype = 'Conditioncheck' OR relation.subjectdocumenttype = 'CollectionObject')
+ INNER JOIN collectionspace_core core ON core.id = media.id
+ ORDER BY relation.subjectcsid, core.updatedat DESC
)
SELECT
obj.objectnumber,
LEFT JOIN hierarchy opdg_hier ON opdg_hier.parentid = object.id AND opdg_hier.name = 'collectionobjects_common:objectProductionDateGroupList' AND opdg_hier.pos = 0
LEFT JOIN structureddategroup sdg ON sdg.id = opdg_hier.id
), related_object_media AS (
- SELECT
+ SELECT DISTINCT ON (object.csid)
object.csid AS objcsid,
media.objectcsid as mediacsid
FROM related_objects object
INNER JOIN relations_common media ON media.subjectcsid = object.csid AND media.objectdocumenttype = 'Media'
INNER JOIN misc ON misc.id = media.id AND misc.lifecyclestate != 'deleted'
+ INNER JOIN hierarchy hier ON hier.name = media.objectcsid
+ INNER JOIN collectionspace_core core ON core.id = hier.id
+ ORDER BY object.csid, core.updatedat DESC
), related_acquisitions AS (
SELECT
acq.acquisitionreferencenumber AS acquisition,
LEFT JOIN placetermgroup place_term ON place_term.id = place_hier.id
-- related media
LEFT JOIN (
- SELECT relation.*
+ SELECT DISTINCT ON (relation.subjectcsid)
+ relation.objectcsid,
+ relation.subjectcsid
FROM relations_common relation
INNER JOIN misc ON misc.id = relation.id AND misc.lifecyclestate != 'deleted'
+ INNER JOIN hierarchy hier ON hier.name = relation.objectcsid
+ INNER JOIN collectionspace_core core ON core.id = hier.id
WHERE relation.objectdocumenttype = 'Media' AND relation.subjectdocumenttype = 'CollectionObject'
+ ORDER BY relation.subjectcsid, core.updatedat DESC
) related_media ON related_media.subjectcsid = hier.name
$P!{whereclause}]]>
</queryString>