MySQLで何が優れているのか疑問に思いました。禁止されたuserIDに関連付けられたすべてのエントリを除外するSELECTクエリがあります。
現在、WHEREステートメントに次のようなサブクエリ句があります。
AND (SELECT COUNT(*)
FROM TheBlackListTable
WHERE userID = userList.ID
AND blackListedID = :userID2 ) = 0
userID
に存在しないすべてを受け入れますTheBlackListTable
前のリクエストで最初にすべての禁止IDを取得し、前の句を次のように置き換える方が速いでしょうか。
AND creatorID NOT IN listOfBannedID