not sure if this is exactly what you are looking for but test it and see if it works :)
(SELECT id, name, age FROM myTable WHERE age = 30)
UNION
(SELECT id, name, age FROM myTable WHERE age = 0 ORDER BY id DESC LIMIT 1)
SQL FIDDLE to play with
(SELECT id, name, age FROM myTable WHERE age = 30)
UNION
(SELECT id, name, age
FROM mytable
WHERE age = 0
AND name NOT in(SELECT name FROM myTable WHERE age = 30)
ORDER BY id DESC)
NEW FIDDLE with op requests