Verwenden Sie einen LEFT JOIN
mit dem PREMIUM
Tabelle in Ihrer Abfrage, die die Übertragungszeit überprüft. Verwenden Sie dann eine Übereinstimmung in dieser Tabelle, um die Zeit, mit der Sie vergleichen, zu konditionieren.
$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);