SELECT DISTINCT dvdpedia.id, dvdpedia.title, dvdpedia.originalTitle, media.media, locale, localeLanguage, releaseDate, MATCH(title) AGAINST(:relevance IN BOOLEAN MODE) AS relevance
FROM dvdpedia
LEFT OUTER JOIN media ON media.id = dvdpedia.mediaId
WHERE MATCH(title) AGAINST(:title IN BOOLEAN MODE) OR MATCH(originalTitle) AGAINST(:originalTitle IN BOOLEAN MODE)
UNION
SELECT DISTINCT dvdpedia.id, dvdpedia.title, dvdpedia.originalTitle, media.media, locale, localeLanguage, releaseDate, MATCH(director) AGAINST(:relevance2 IN BOOLEAN MODE) AS relevance
FROM director
INNER JOIN director2title ON director.id = director2title.pId
INNER JOIN dvdpedia ON director2title.titleId = dvdpedia.id
LEFT OUTER JOIN media ON media.id = dvdpedia.mediaId
WHERE MATCH(director) AGAINST(:director IN BOOLEAN MODE)
UNION
SELECT dvdpedia.id, dvdpedia.title, dvdpedia.originalTitle, media.media, dvdpedia.locale, dvdpedia.localeLanguage, dvdpedia.releaseDate, MATCH(actor) AGAINST(:actor IN BOOLEAN MODE) AS relevance
FROM actor
INNER JOIN actor2role
ON actor2role.actorId = actor.id
INNER JOIN dvdpedia
ON dvdpedia.id = actor2role.titleId
LEFT OUTER JOIN media ON media.id = dvdpedia.mediaId
WHERE MATCH(actor) AGAINST(:actor2 IN BOOLEAN MODE)
Bookmarks