Was ist die richtige Syntax der IF-Anweisung in MySQL?

Ich habe einen kleinen und einfachen MySQL-Code. Aber wenn ich es starte, bekomme ich die Fehlermeldung # 1064. Kannst du mir sagen, was mein Fehler ist?

IF ((SELECT COUNT(id) FROM tbl_states) > 0) THEN
    BEGIN
        SELECT * FROM tbl_cities;
    END
END IF

Ich habe auch einige andere Bedingungen verwendet, wie die folgende, aber ich habe wieder einen Fehler bekommen.

IF (1=1) THEN
    BEGIN
        SELECT * FROM tbl_cities;
    END
END IF

Was ich eigentlich machen möchte, ist so etwas:

IF ((SELECT COUNT(id) FROM tbl_states) > 0) THEN
    BEGIN
        UPDATE ...
    END
ELSE
    BEGIN
        INSERT ...
    END
END IF

Antworten auf die Frage(4)

Ihre Antwort auf die Frage