Това звучи като някакво състезателно състояние. Използвате MyISAM, така че е възможно актуализацията да бъде отложена (особено ако има много трафик на тази маса).
true
return показва, че вашият select
заявката е завършена правилно, но е върната и празен набор от резултати (няма редове). Ако вашата логика, когато това се случи, е да изчакате, да речем, 50 милисекунди и да опитате отново, може да откриете, че нещата работят правилно.
Редактиране :Можете да опитате да заключите таблицата от преди да направите UPDATE, докато не направите последното SELECT. Но това може да попречи на производителността на други части на вашето приложение. Най-доброто нещо, което трябва да направите, е да направите приложението си стабилно в условията на състезание.