Använd en LEFT JOIN
med PREMIUM
tabell i din fråga som kontrollerar överföringstiden. Använd sedan en matchning i den tabellen för att villkora tiden som du jämför med.
$num_rows = $db->doQuery('
SELECT Class, Race, Strong, Sta, Dex, Intel, Cha, Points, TransferTime
FROM USERDATA u
LEFT JOIN PREMIUM p ON p.strAccountID = u.strUserId
WHERE strUserId = ?
AND (TransferTime < IF(p.strAccountId IS NULL,
DATEADD(DAY,-2,GETDATE()),
DATE_SUB(NOW(), INTERVAL 12 HOUR)))
OR TransferTime IS NULL)
AND zone<>199 and authority<>255', $character);