CREATE OR REPLACE VIEW qry_FilmReviewRating_AvgYear AS
SELECT
1 AS intReviewYear_M,
intFestYear AS intReviewYear,
AVG(bytRatingPercent) AS sngReviewYearAvg_C,
COUNT(intReviewID) AS intReviewYearCnt
FROM
tblRating INNER JOIN (
tblReview INNER JOIN (
tblFilm
) ON intReviewFilmKey = intFilmID
) ON intReviewRatingKey = intRatingID
WHERE
(bytRatingPercent > 0)
GROUP BY
intReviewYear
DEBUG: Error
CREATE OR REPLACE VIEW qry_FilmPick_AvgYear AS
SELECT
1 AS intPickYear_M,
intFestYear AS intPickYear,
AVG(bytPickPercent) AS sngPickYearAvg_C,
COUNT(intPickID) AS intPickYearCnt
FROM
tblFilm INNER JOIN (
tblUserPick
) ON intPickFilmKey = intFilmID
WHERE
(bytPickPercent > 0)
GROUP BY
intPickYear
DEBUG: Error
CREATE OR REPLACE VIEW qry_FilmReviewRating_AvgFilm AS
SELECT
intReviewFilmKey,
COUNT(intReviewID) AS intReviewFilmCnt_V,
AVG(bytRatingPercent) AS sngReviewFilmAvg_R,
CEILING( AVG(bytRatingPercent)/10 )*10 AS intReviewFilmAvg
FROM
tblRating INNER JOIN (
tblReview
) ON intReviewRatingKey = intRatingID
WHERE
(bytRatingPercent > 0)
GROUP BY
intReviewFilmKey
DEBUG: Error
CREATE OR REPLACE VIEW qry_FilmPick_AvgFilm AS
SELECT
intPickFilmKey,
COUNT(intPickID) AS intPickFilmCnt_V,
AVG(bytPickPercent) AS sngPickFilmAvg_R,
CEILING( AVG(bytPickPercent)/20 )*20 AS intPickFilmAvg
FROM
tblUserPick
WHERE
(bytPickPercent > 0)
GROUP BY
intPickFilmKey
DEBUG: Error
CREATE OR REPLACE VIEW qry_FilmReviewRating_Bayesian AS
SELECT
intFilmID AS intReviewFilmKey,
intReviewFilmAvg AS intReviewAvg,
((sngReviewFilmAvg_R * intReviewFilmCnt_V) + (sngReviewYearAvg_C * intReviewYear_M)) / (intReviewFilmCnt_V + intReviewYear_M) AS sngReviewBayesian,
CEILING( ((sngReviewFilmAvg_R * intReviewFilmCnt_V) + (sngReviewYearAvg_C * intReviewYear_M)) / (intReviewFilmCnt_V + intReviewYear_M)/10 )*10 AS bytReviewBayesian
FROM
qry_FilmReviewRating_AvgYear INNER JOIN (
tblFilm INNER JOIN (
qry_FilmReviewRating_AvgFilm
) ON intReviewFilmKey = intFilmID
) ON intReviewYear = intFestYear
DEBUG: Error
CREATE OR REPLACE VIEW qry_FilmPick_Bayesian AS
SELECT
intFilmID AS intPickFilmKey,
intPickFilmAvg AS intPickAvg,
((sngPickFilmAvg_R * intPickFilmCnt_V) + (sngPickYearAvg_C * intPickYear_M)) / (intPickFilmCnt_V + intPickYear_M) AS sngPickBayesian,
CEILING( ((sngPickFilmAvg_R * intPickFilmCnt_V) + (sngPickYearAvg_C * intPickYear_M)) / (intPickFilmCnt_V + intPickYear_M)/20 )*20 AS bytPickBayesian
FROM
qry_FilmPick_AvgYear INNER JOIN (
tblFilm INNER JOIN (
qry_FilmPick_AvgFilm
) ON intPickFilmKey = intFilmID
) ON intPickYear = intFestYear
DEBUG: Error
CREATE OR REPLACE VIEW qry_FilmReviewLatest AS
SELECT intReviewFilmKey, MAX(dtmReviewUpdated) AS dtmReviewUpdatedLast
FROM tblReview
WHERE YEAR(dtmReviewUpdated) = 2024
GROUP BY intReviewFilmKey
DEBUG: Error
CREATE OR REPLACE VIEW qry_CountReviewFilm AS
SELECT intReviewFilmKey, COUNT(intReviewID) AS intCountReviewFilm
FROM tblReview
GROUP BY intReviewFilmKey
DEBUG: Error
CREATE OR REPLACE VIEW qry_CountReviewStar AS
SELECT intReviewFilmKey, COUNT(intReviewID) AS intCountReviewStar
FROM tblReview
WHERE ( (intReviewRatingKey <> 9410520) AND (intReviewRatingKey IS NOT NULL) )
GROUP BY intReviewFilmKey
DEBUG: Error
CREATE OR REPLACE VIEW qry_CountReviewVideo AS
SELECT intReviewFilmKey, COUNT(intReviewID) AS intCountReviewVideo
FROM tblReview
WHERE (ysnReviewVideo IS NOT NULL) AND (ysnReviewVideo<>0) -- OR (strReviewURL LIKE '%youtube.com%')
GROUP BY intReviewFilmKey
DEBUG: Error
CREATE OR REPLACE VIEW qry_CountFilmEmbed AS
SELECT intEmbedFilmKey, COUNT(intEmbedID) AS intCountFilmEmbed
FROM tblFilmEmbed
WHERE (TRIM(memEmbedHTM) IS NOT NULL)
GROUP BY intEmbedFilmKey
DEBUG: Error
CREATE OR REPLACE VIEW qry_ScoreFilm AS
SELECT
IFNULL(intFestYear, 2024) AS intScoreFilmYear,
intFilmID AS intScoreFilmKey,
strFilename,
strProgCode, strProgName,
dtmUpdated,
dtmReviewUpdatedLast,
( IF(intMinutes > 0, 1, 0)
+ IF(memDir IS NOT NULL, 1, 0)
+ IF(strCountry IS NOT NULL, 1, 0)
+ IF(strLang IS NOT NULL, 1, 0)
+ IF(memCast IS NOT NULL, 1, 0)
+ IF(memDesc IS NOT NULL, 1, 0)
+ IF(strPresentedBy IS NOT NULL, 1, 0)
+ IF(ysnElgin IS NOT NULL AND ysnElgin <> 0, 1, 0)
+ IF(intTicketKey IS NOT NULL AND intTicketKey <> 4027988, 1, 0)
+ IF(intClassKey IS NOT NULL AND intTicketKey <> 1246296, 1, 0)
+ IF(strHtmNewsURL IS NOT NULL, 1, 0)
+ IF(strHtmIMDbURL IS NOT NULL, 1, 0)
+ IF(strHtmFestURL IS NOT NULL AND strImgFstOrig <> '!', 1, 0)
+ IF(ysnNotFilm IS NOT NULL AND ysnNotFilm <> 0, 1, 0)
+ IF(ysnDoc IS NOT NULL AND ysnDoc <> 0, 1, 0)
+ IF(ysnAnim IS NOT NULL AND ysnAnim <> 0, 1, 0)
+ IF(ysnShort IS NOT NULL AND ysnShort <> 0, 1, 0)
+ IF(ysnBW IS NOT NULL AND ysnBW <> 0, 1, 0)
+ IF(ysn3D IS NOT NULL AND ysn3D <> 0, 1, 0)
+ IF(ysnNoDialog IS NOT NULL AND ysnNoDialog <> 0, 1, 0)
+ IF(dtmRelease IS NOT NULL, 1, 0)
+ IF(strImgFstOrig IS NOT NULL AND strImgFstOrig <> '!', 1, 0)
+ IF(strImgAltOrig IS NOT NULL AND strImgAltOrig <> '!', 1, 0)
+ IFNULL(intCountReviewStar, 0)
+ IFNULL(intCountReviewVideo, 0)
+ (IFNULL(intCountReviewFilm,0) - IFNULL(intCountReviewStar,0) - IFNULL(intCountReviewVideo,0))
+ IFNULL(intCountFilmEmbed, 0)
) AS intScoreFilm
FROM
qry_FilmReviewLatest RIGHT JOIN (
qry_CountReviewFilm RIGHT JOIN (
qry_CountReviewStar RIGHT JOIN (
qry_CountReviewVideo RIGHT JOIN (
qry_CountFilmEmbed RIGHT JOIN (
tblFilmImg RIGHT JOIN (
tblProg RIGHT JOIN (
tblFilm
) ON intProgKey = intProgID
) ON intImgFilmKey = intFilmID
) ON qry_CountFilmEmbed.intEmbedFilmKey = intFilmID
) ON qry_CountReviewVideo.intReviewFilmKey = intFilmID
) ON qry_CountReviewStar.intReviewFilmKey = intFilmID
) ON qry_CountReviewFilm.intReviewFilmKey = intFilmID
) ON qry_FilmReviewLatest.intReviewFilmKey = intFilmID
WHERE
IFNULL(dtmAnnounced, 0) <= '2025-05-20'
DEBUG: Error
CREATE OR REPLACE VIEW qry_ScoreYear AS
SELECT
intScoreFilmYear AS intScoreMaxYear,
MAX(intScoreFilm) AS intScoreYearMax,
MIN(intScoreFilm) AS intScoreYearMin
FROM
qry_ScoreFilm
GROUP BY
intScoreMaxYear
DEBUG: Error
CREATE OR REPLACE VIEW qry_Sitemap AS
SELECT
intScoreFilmKey AS intFilmKey,
intScoreFilmYear AS intFestYear,
strFilename,
strProgCode, strProgName,
dtmUpdated,
dtmReviewUpdatedLast,
intScoreFilm AS intScore,
intScoreYearMax,
ROUND((intScoreFilm-intScoreYearMin)/(intScoreYearMax-intScoreYearMin)*100) AS sngScorePercent,
ROUND((intScoreFilm-intScoreYearMin)/(intScoreYearMax-intScoreYearMin)*5)*20 AS intScorePercent,
ROUND((intScoreFilm-intScoreYearMin)/(intScoreYearMax-intScoreYearMin)*5) AS intScoreBuzz,
FORMAT( ROUND((intScoreFilm-intScoreYearMin)/(intScoreYearMax-intScoreYearMin)*5)/10 + IF(intScoreFilmYear = '2024', 0.5, 0),1) AS sngPriority
FROM
qry_ScoreYear RIGHT JOIN (
qry_ScoreFilm
) ON intScoreMaxYear = intScoreFilmYear
ORDER BY intFestYear DESC, intScoreFilm DESC
DEBUG: Error
CREATE OR REPLACE VIEW qryFilmList AS
SELECT
intFilmID,
strFilmB64,
IF(LOCATE(LEFT(strTitle,1),'ABCDEFGHIJKLMNOPQRSTUVWXYZ'),UPPER(LEFT(strTitle,1)),'~') AS strTitleChar,
strTitle,
strTitleOrig,
IFNULL(intFilmYear,2024) AS intFilmYear,
IFNULL(intFestYear,2024) AS intFestYear,
strFilename,
IF(CHAR_LENGTH(strCountry)>18, CONCAT(LEFT(strCountry,20),'…'), strCountry) AS strCountry,
IF(CHAR_LENGTH(strLang)>18, CONCAT(LEFT(strLang,20),'…'), strLang) AS strLang,
IF(CHAR_LENGTH(memDir)>28, CONCAT(LEFT(memDir,28),'…'), memDir) AS memDir,
IF(CHAR_LENGTH(memCast)>44, CONCAT(LEFT(memCast,44),'…'), memCast) AS memCast,
IF(CHAR_LENGTH(memDesc)>144, CONCAT(LEFT(memDesc,144),'…'), memDesc) AS memDesc,
ysnElgin,
bytTally,
dtmAnnounced, -- datetime
DATE_FORMAT(dtmAnnounced, '%d%b') AS strAnnounceDay,
DATE_FORMAT(dtmAnnounced, '%M %D') AS strAnnounceDate,
dtmUpdated,
DATE_FORMAT(dtmUpdated,'%a.%d/%b') AS strUpdated,
dtmRelease,
DATE_FORMAT(dtmRelease,'%a.%d/%b') AS strRelease,
--
IFNULL(strHtmNewsFile,'!') AS strHtmNewsFile, IFNULL(strHtmFestFile,'!') AS strHtmFestFile, IFNULL(strHtmIMDbURL,'!') AS strHtmIMDbURL,
--
IFNULL(tblFilmImg.strImgFstThmb,'!') AS strImgFstThmb,
tblFilmImg.strImgFstURL, tblFilmImg.strImgAltThmb, tblFilmImg.strImgAltURL,
--
tblProg.bytProgRank, tblProg.strProgCode, tblProg.strProgName, tblProg.strProgImg, tblProg.strProgRGB,
--
tblClass.bytClassRank, tblClass.strClassCode, tblClass.strClassDesc, tblClass.strClassImg,
--
tblTicket.bytTicketRank, tblTicket.strTicketType, tblTicket.strTicketSymbol, tblTicket.strTicketDesc, tblTicket.strTicketImg,
--
IFNULL(bytReviewBayesian,0) AS intReviewAvgPercent,
tblRating.strRatingStars, tblRating.strRatingDesc, tblRating.strRatingStarImg,
IF(ysnPulled, '!','OK') AS ysnPulled
FROM
tblRating RIGHT JOIN (
tblTicket RIGHT JOIN (
tblClass RIGHT JOIN (
tblProg RIGHT JOIN (
tblFilmImg RIGHT JOIN (
qry_FilmReviewRating_Bayesian RIGHT JOIN (
tblFilm
) ON intReviewFilmKey = intFilmID
) ON intImgFilmKey = intFilmID
) ON intProgID = intProgKey
) ON intClassID = IFNULL(intClassKey,1246296)
) ON intTicketID = IFNULL(intTicketKey,4027988)
) ON bytRatingPercent = IFNULL(bytReviewBayesian,0)
WHERE
IFNULL(dtmAnnounced, 0) <= '2025-05-20'
DEBUG: Error
CREATE OR REPLACE VIEW qryFilmDetail AS
SELECT
intScorePercent AS intBuzzAvgPercent,
-- IFNULL(intScore,0) AS intBuzzAvgPercent,
-- IFNULL(bytPickBayesian,0) AS intBuzzAvgPercent,
--
IF(LOCATE(LEFT(strTitle,1),'ABCDEFGHIJKLMNOPQRSTUVWXYZ'),UPPER(LEFT(strTitle,1)),'~') AS strTitleChar,
--
tblFilm.*,
IF(intMinutes>59,CONCAT(TIME_FORMAT(SEC_TO_TIME(intMinutes * 60), '%k:%i'), ' (',intMinutes, 'min)'),TIME_FORMAT(SEC_TO_TIME(intMinutes * 60), '%k:%i')) AS strRuntime,
tblFilmImg.*, tblProg.*, tblClass.*, tblTicket.*, tblRating.*
FROM
tblRating RIGHT JOIN (
tblTicket RIGHT JOIN (
tblClass RIGHT JOIN (
tblProg RIGHT JOIN (
tblFilmImg RIGHT JOIN (
qry_Sitemap RIGHT JOIN (
-- qry_FilmPick_Bayesian RIGHT JOIN (
tblFilm
-- ) ON intPickFilmKey = intFilmID
) ON intFilmKey = intFilmID
) ON tblFilmImg.intImgFilmKey = intFilmID
) ON tblProg.intProgID = intProgKey
) ON tblClass.intClassID = IFNULL(intClassKey,1246296)
) ON tblTicket.intTicketID = IFNULL(intTicketKey,4027988)
-- ) ON tblRating.bytRatingPercent = IFNULL(bytPickBayesian,0)
) ON tblRating.bytRatingPercent = IFNULL(intScorePercent,0)
DEBUG: Error
CREATE OR REPLACE VIEW qryReview AS
SELECT tblReview.*,
IF(ysnReviewOfficial IS NOT NULL AND ysnReviewOfficial<>0, TRUE, FALSE) AS ysnOfficial,
IF(ysnReviewVideo IS NOT NULL AND ysnReviewVideo<>0, TRUE, FALSE) AS ysnVideo,
IF(ysnReviewPhoto IS NOT NULL AND ysnReviewPhoto<>0, TRUE, FALSE) AS ysnPhoto,
tblRating.*
FROM tblReview LEFT JOIN tblRating
ON intReviewRatingKey = intRatingID
ORDER BY bytRatingPercent DESC, ysnOfficial DESC, ysnVideo DESC, ysnPhoto DESC, strReviewURL
DEBUG: Error
CREATE OR REPLACE VIEW qrySearch AS
SELECT tblSearch.*, tblSearchPost.*
FROM tblSearch LEFT JOIN (
tblSearchPost
) ON intPostSearchKey = intSearchID
WHERE NOT ysnSearchDisable
ORDER BY bytSearchRank
DEBUG: Error
CREATE OR REPLACE VIEW qry_ReviewURL AS
SELECT
TRIM(
REPLACE(
REPLACE(
SUBSTRING(
SUBSTRING(strReviewURL FROM INSTR(strReviewURL,'://')+3)
FROM
1
FOR
INSTR(
SUBSTRING(strReviewURL FROM INSTR(strReviewURL,'://')+3)
,'/')
)
,'/','')
,'www.','')
)
AS strURL
FROM tblReview
DEBUG: Error
CREATE OR REPLACE VIEW qry_ReviewURLcount AS
SELECT
strURL,
COUNT(strURL) AS intURL
FROM qry_ReviewURL
WHERE ((strURL NOT LIKE '%blogspot%') AND (strURL NOT LIKE '%wordpress%'))
GROUP BY strURL
ORDER BY intURL DESC
LIMIT 47
DEBUG: Error
CREATE OR REPLACE VIEW qry_ReviewURLlength AS
SELECT
strURL,
CHAR_LENGTH(strURL) AS intURL
FROM qry_ReviewURL
WHERE ((strURL NOT LIKE '%blogspot%') AND (strURL NOT LIKE '%wordpress%'))
GROUP BY strURL
ORDER BY intURL DESC
LIMIT 47
DEBUG: Error
CREATE OR REPLACE VIEW qryVenueScreen AS
SELECT
tblScreen.*,
tblVenue.*
FROM
tblScreen LEFT JOIN tblVenue ON intScreenVenueKey = intVenueID
DEBUG: Error
CREATE OR REPLACE VIEW qryEvent AS
SELECT
ADDDATE('2025-09-01 00:00:00', intEventDays) AS dtmEvent,
DATEDIFF(ADDDATE('2025-09-01 00:00:00', intEventDays), CURDATE()) AS intDateDiff,
DATE_FORMAT(ADDDATE('2025-09-01 00:00:00', intEventDays),'%W, %M %D') AS strEventDay,
DATE_FORMAT(ADDDATE('2025-09-01 00:00:00', intEventDays),'%a.%d.%b') AS strEventDate,
tblEvent.*
FROM tblEvent
ORDER BY intEventDays
DEBUG: Error
CREATE OR REPLACE VIEW qry_RSS AS
SELECT intFilmID, strFilmB64, intFestYear, strTitle, strFilename, memDesc,
dtmAnnounced, dtmAdded, dtmUpdated, dtmReviewUpdatedLast,
strImgFstThmb, strImgFstURL,
strImgAltThmb, strImgAltURL
FROM
qry_FilmReviewLatest RIGHT JOIN (
tblFilm INNER JOIN tblFilmImg ON intImgFilmKey = intFilmID
) ON intReviewFilmKey = intFilmID
WHERE
(intFestYear = 2024) AND (IFNULL(dtmAnnounced, 0) <= '2025-05-20')
ORDER BY
strTitle
DEBUG: Error
CREATE OR REPLACE VIEW qry_RSSupdate AS
SELECT intFestYear,
MAX(dtmAnnounced) AS dtmAnnounced,
MAX(dtmAdded) AS dtmAdded,
MAX(dtmUpdated) AS dtmUpdated,
MAX(dtmReviewUpdatedLast) AS dtmReviewUpdatedLast
FROM
qry_FilmReviewLatest RIGHT JOIN (
qry_CountReviewVideo RIGHT JOIN (
qry_CountFilmEmbed RIGHT JOIN (
tblFilmImg RIGHT JOIN (
tblFilm
) ON intImgFilmKey = intFilmID
) ON qry_CountFilmEmbed.intEmbedFilmKey = intFilmID
) ON qry_CountReviewVideo.intReviewFilmKey = intFilmID
) ON qry_FilmReviewLatest.intReviewFilmKey = intFilmID
WHERE
(intFestYear = 2024)
AND
(IFNULL(dtmAnnounced, 0) <= '2025-05-20')
ORDER BY
strTitle
DEBUG: Error
CREATE OR REPLACE VIEW qry_ODBC AS
SELECT
(intFilmID) AS id,
(strTitleOrig) AS title,
CAST(
LOWER(
REPLACE(
REPLACE(strHtmFestURL, CONCAT('http://tiff.net/filmsandschedules/festival/',intFestYear,'/'),''),
CONCAT('http://www.tiff.net/filmsandschedules/festival/',intFestYear,'/'),'')
) AS CHAR) AS tiff_id,
LOWER(strHtmFestURL) AS tiff_url,
LOWER(strHtmFestFile) AS tiff_htm,
CAST(
CONCAT('http://TOfilmfest.ca/films/?by=Film&at=', strFilename, '&yr=', intFestYear, '#', strFilename)
AS CHAR) AS tofilmfest_url,
IF(strImgFstFile IS NOT NULL AND strImgFstFile <> '!', strImgFstFile, strImgAltFile) AS tofilmfest_img,
(strHtmIMDbURL) AS imdb_url
FROM
tblFilmImg INNER JOIN tblFilm ON intImgFilmKey = intFilmID
WHERE
(intFestYear = 2024) AND (IFNULL(dtmAnnounced, 0) <= '2025-05-20')
TOfilmfest.ca 2010 “” ( feature film) - 355 films +496 reviews +510 videos +2436 links - TIFF 2010 - 35th Toronto International Film Festival® September 9-19, 2010
DirectorUnknown
CastUnknown
Please visit the official film-festival web-page for a synopsis.