Tak, SERIAL jest równoważną funkcją.
CREATE TABLE foo (
id SERIAL,
bar varchar
);
INSERT INTO foo (bar) VALUES ('blah');
INSERT INTO foo (bar) VALUES ('blah');
SELECT * FROM foo;
+----------+
| 1 | blah |
+----------+
| 2 | blah |
+----------+
SERIAL to po prostu makro czasu tworzenia tabeli wokół sekwencji. Nie możesz zmienić SERIAL na istniejącą kolumnę.