1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
SELECT DISTINCT
p.title AS programTitle,
p.plannedDate AS programDate,
pdoc.rank AS docRank,
pdoc.title AS docTitle,
pdoc.link AS docLink,
pi.rank AS rank,
a.firstName,
a.lastName,
a.birth,
a.death,
a.url AS authorURL,
IF(pi.title IS NULL, w.title, pi.title) AS title,
IF(pi.solo IS NULL, w.solo, pi.solo) AS solo,
IF(pi.choir IS NULL, w.choir, pi.choir) AS choir,
IF(pi.instrument IS NULL, w.instrument, pi.instrument) AS instrument,
pi.comments AS comments,
wf.link AS fileLink,
wf.private AS privateFile,
wf.type AS fileType,
wft.*
FROM ProgItems AS pi
LEFT JOIN Works AS w
ON w.authorID = pi.authorID AND w.workID = pi.workID AND w.mvtID = pi.mvtID
LEFT JOIN Authors AS a
ON a.authorID = pi.authorID
JOIN Programs AS p
ON p.progID = pi.progID
LEFT JOIN ProgDocs AS pdoc
ON pdoc.progID = p.progID
LEFT JOIN WorkFiles AS wf
ON wf.authorID = w.authorID AND wf.workID = w.workID and wf.mvtID = w.mvtID
LEFT JOIN WorkfileTypes AS wft
ON wft.type = wf.type
WHERE
pi.progID = 'Bastille2020'
ORDER BY pi.rank,
wft.id
LIMIT 1000
; |
Partager