Tôi sẽ phải thử, nhưng hãy nhớ rằng đến từ nền Microsoft SQL và tôi không quen với cấu trúc chính xác của các bảng của bạn, vì vậy một số SQL có thể hơi rắc rối.
IF (SELECT COUNT(*) FROM beta WHERE name = 'John' > 0)
UPDATE alfa SET c1=(SELECT id FROM beta WHERE name = 'John')
ELSE
BEGIN
INSERT INTO beta (name) VALUES ('John')
INSERT INTO alfa (c1) VALUES (LAST_INSERT_ID())
END
Hy vọng điều này sẽ giúp ích được phần nào.