Сравнение

СУБД 1 СУБД 2 Совпадения
1MySQLSQLite11
2PostgreSQLSQLite9
3ORACLEPostgreSQL8
4ORACLEMS Access7
5MySQLMS Access7
6PostgreSQLMS Access7
7MySQLPostgreSQL6
8ORACLESQLite3
9ORACLEMySQL2

Детализация

ID Особенность Пример Oracle MySQL PostgreSQL SQLite MS Access Комментарии Тип
1SELECT без FROMSELECT 2 * 2;++++Аналог в Oracle:
SELECT 2 * 2 FROM dual;
DML
2Независимость от регистра в именах таблицSELECT * FROM TEST;
или
SELECT * FROM test;
++++DML
3Независимость от регистра в инструкции LIKESELECT 'А%' FROM... ;
или
SELECT 'а%' FROM... ;
+++Чтобы избавиться от зависимости от регистра в Oracle, можно использовать функции UPPER(LOWER). Например:
SELECT * FROM STUDENT WHERE UPPER(LAST_NAME) LIKE 'А%';
или (то же самое)
SELECT * FROM STUDENT WHERE LOWER(LAST_NAME) LIKE 'a%';
DML
4Кавычки в инструкции LIKESELECT "а%" FROM... ;+++DML
5Прямой апостроф для псевдонимовSELECT * FROM test AS 'Тестовая таблица';++DML
6Обратный апостроф для псевдонимовSELECT * FROM test AS `Тестовая таблица`;+++DML
7Кавычки для псевдонимовSELECT * FROM test AS "Тестовая таблица";++++DML
8Псевдонимы в запросах DELETEDELETE FROM test t WHERE t.ID=5;+++DML
9Возможность замены LEFT (RIGHT) в неявном JOIN конструкцией "(+)"SELECT * FROM customers c, orders o WHERE o.customer_id (+) = c.customer_id;+Аналог с явным LEFT JOIN:
SELECT * FROM customers c LEFT JOIN orders o ON o.customer_id = c.customer_id;
DML
10Оператор MINUS в запросахSELECT * FROM student s
MINUS SELECT * FROM student s2 WHERE s2.id > 1000;
+Аналог в PostgreSQL и SQLite – EXCEPTDML
11Оператор EXCEPT в запросахSELECT * FROM student s
EXCEPT SELECT * FROM student s2 WHERE s2.id > 1000;
++Аналог в Oracle – MINUSDML
12Использование || для конкатенации строкSELECT s.last_name || ' ' || s.first_name FROM STUDENT s;++++DML
13Множественный INSERT (простой вариант)INSERT INTO test_table (id, txt) VALUES
(1, 'текст 1'),
(2, 'текст 2');
+++Аналогичный запрос в Oracle
INSERT ALL
INTO test_table (id, txt) VALUES (1, 'текст1')
INTO test_table (id, txt) VALUES (2, 'текст2')
SELECT * FROM dual;
DML
14Оператор LIMIT – ограничение количества записей в запросе на выборкуSELECT * FROM test_table LIMIT 2;+++Частичный аналог в Oracle:
SELECT * FROM test_table WHERE rownum < 2;
Частичный аналог в MS Access:
SELECT TOP 2 * FROM test_table;
DML