MySQL DELETE FROM z podkwerendą UNION według warunku IN

Potknąłem się na dziwnym błędzie SQL. Ostatnie zapytanie nie działa. Oczywiście mogę po prostu podzielić to DELETE na trzy zapytania, ale naprawdę zastanawiam się, dlaczego MySQL nie pozwala mi tego zrobić w ten sposób.

Mały przykład:

(SELECT id FROM stairs WHERE building = 123)
UNION
(SELECT id FROM lift WHERE building = 123)
UNION
(SELECT id FROM qrcodeid WHERE building = 123)

Prace!

DELETE FROM startpoint WHERE id IN (SELECT id FROM stairs WHERE building = 123)

działa też!

Natomiast

DELETE FROM startpoint WHERE id IN (
    (SELECT id FROM stairs WHERE building = 123)
    UNION
    (SELECT id FROM lift WHERE building = 123)
    UNION
    (SELECT id FROM qrcodeid WHERE building = 123)
)

podnosi błąd

# 1064 - Wystąpił błąd w składni SQL; sprawdź instrukcję, która odpowiada twojej wersji serwera MySQL pod kątem poprawnej składni w pobliżu 'UNION (SELECT id FROM lift WHERE building = 123) UNION (SELECT id FROM qrc' w linii 3

Czy masz jakąś wskazówkę?

questionAnswers(2)

yourAnswerToTheQuestion