Проблем с INNER JOIN mysql заявка

gearfight

Registered
Имам това:
Код:
$mqy = time();
mysql_query("DELETE FROM `amx_amxadmins` INNER JOIN `amx_admins_servers` ON `amx_admins_servers.admin_id` = `amx_amxadmins.id` WHERE `amx_amxadmins.expired` < '$mqy' AND `amx_amxadmins.expired` != '0'");
Да, обаче не иска да трие.
Във втората таблица "amx_admins_servers" - тези admin_id-та (които сравнява с id от първата) са много, около 9-10, а в amx_amxadmins id-то е само 1.
Целта ми е след като са изтекли да се трият.
Направих си тестов юзър който има следния unix timestamp: 1331143737, което пък е:
Код:
Wed, 07 Mar 2012 18:08:57 GMT
(вече е изтекло)
Но не иска и това е и започнах да се нервирам, какво ли не пробвах - не става.
Някакви идеи ?
 
За какво ти е джойн-а в случая? Аз не виждам полза от него :idea:
В такива случаи, просто обърни куеритo, вместо DELETE, сложи SELECT и виж какво ще ти изкара :?:
 
PHP:
$mqy = time();
mysql_query("DELETE FROM `amx_amxadmins` WHERE `amx_amxadmins.expired` < '$mqy' AND `amx_amxadmins.expired` != '0'");
като предполагаме, че в колоната expired наистина е записан таймстамп, а не самата дата.
Винаги може да провериш по обратната логика
PHP:
$mqy = time();
mysql_query("SELECT * FROM `amx_amxadmins` WHERE `amx_amxadmins.expired` < '$mqy' AND `amx_amxadmins.expired` != '0'");
 

Back
Горе