Efficient SQL Statements
A brief non-version specific guide to writing efficient SQL statements.
oracle miscconfigurationintermediate
by OracleDba
13 views
A brief non-version specific guide to writing efficient SQL statements.
123456789101112131415
TABLE1 - 1000 rows
TABLE2 - 1000 rows
(A)
SELECT t1.id
FROM table1 t1
WHERE t1.code IN (SELECT t2.code
FROM table2 t2);
(B)
SELECT t1.id
FROM table1 t1
WHERE EXISTS (SELECT '1'
FROM table2 t2
WHERE t2.code = t1.code)1234567891011121314151617181920212223242526272829
SELECT COUNT(*)
INTO v_count
FROM items
WHERE item_size = 'SMALL';
IF v_count = 0 THEN
-- Do processing related to no small items present
END IF;
SELECT COUNT(*)
INTO v_count
FROM items
WHERE item_size = 'SMALL'
AND rownum = 1;
IF v_count = 0 THEN
-- Do processing related to no small items present
END IF;
SELECT COUNT(*)
INTO v_count
FROM dual
WHERE EXISTS (SELECT 1
FROM items
WHERE item_size = 'SMALL');
IF v_count = 0 THEN
-- Do processing related to no small items present
END IF;12345678910111213141516171819
FROM d, c, b, a
WHERE a.join_column = 12345
AND a.join_column = b.join_column
AND b.join_column = c.join_column
AND c.join_column = d.join_column;
FROM d, c, b, a
WHERE a.join_column = 12345
AND a.join_column = b.join_column
AND b.join_column = c.join_column
AND c.join_column = d.join_column
AND d.name = 'JONES';
FROM c, b, a, d
WHERE d.name = 'JONES'
AND d.join_column = 12345
AND d.join_column = a.join_column
AND a.join_column = b.join_column
AND b.join_column = c.join_column123456789101112131415
SELECT first_name,
last_name,
country
FROM employee,
countries
WHERE country_id = id
AND lastname = 'HALL';
SELECT e.first_name,
e.last_name,
c.country
FROM employee e,
countries c
WHERE e.country_id = c.id
AND e.last_name = 'HALL';Please to add comments
No comments yet. Be the first to comment!