Acabei de passar por isso, bem, ainda estou ...
- Texto que diferencia maiúsculas de minúsculas
- Falta de
INSERT IGNORE
eREPLACE
- A transmissão explícita é necessária em quase todos os lugares
- Sem contra-ataques
LOAD DATA INFILE
(COPY
está perto, mas não perto o suficiente)- Alterar
autoincrement
paraSERIAL
- Embora forma ruim no MySQL, no Postgres, um
INNER JOIN
sem umON
cláusula não pode acontecer, useCROSS JOIN
ou similares COUNT(*)
pode ser muito lento- Os bancos de dados são codificados com conjuntos de caracteres, não tabelas
- Você pode ter vários bancos de dados, com vários esquemas (o MySQL realmente tem apenas um banco de dados e vários esquemas)
- O particionamento é diferente
- MySQL
interval
vs.interval
do Postgres (para intervalos de tempo) - Renomeação implícita de colunas, Postgres requer
AS
- Não é possível atualizar várias tabelas ao mesmo tempo no Postgres
- As funções do Postgres são poderosas. Portanto, não há
CALL proc();
; reescreverproc()
como uma função eSELECT proc();
.