Большинство баз данных SQL в определенной степени соответствуют стандартам ANSI SQL, но
Стандарт является неоднозначным, оставляя некоторые области открытыми для интерпретации (например: как должны обрабатываться различные операции с NULLs
является неоднозначным )
Некоторые поставщики прямо противоречат стандарту или просто не имеют функциональности, определенной стандартом (например: MySQL имеет список различий между стандартом и их реализацией)
Некоторые базы данных будут вести себя по-разному в зависимости от того, как они настроены, но конфигурацию можно изменить, чтобы они вели себя одинаково (например, Oracle выполняет сравнение строк с учетом регистра по умолчанию, в то время как SQL Server выполняет их с учетом регистра). insensitve)
Существует некоторая функциональность, которая не является частью стандарта, но в любом случае реализована различными СУБД, хотя и с разными именами (например: Oracle LISTAGG
= MySQL GROUP_CONCAT
)
Существует ли ресурс с исчерпывающим списком причуд и ошибок, на которые следует обратить внимание, когда вы пытаетесь написать что-то, что должно быть совместимо с несколькими базами данных?