select
u.id,
u.name,
if(u.LastUpdateTime >= k.LastUpdateTime, u.password, k.password) as password,
greatest(u.LastUpdateTime, k.LastUpdateTime) as LastUpdateTime
from
user u
inner join user_k k on u.id = k.id
- beobachten Sie es live in einem sqlfiddle
P.S.:Für ID 3 ist das neuere Passwort tatsächlich das aus der Benutzertabelle, nicht user_k. Ihre gewünschte Ergebnismenge benötigt diese Anpassung.