SELECT myinteger
FROM mytable
WHERE myvarchar = 'MIKE';
SELECT myinteger
FROM mytable
WHERE myvarchar = N'MIKE';
SELECT *
FROM mytable
WHERE UPPER(mycolumn) = UPPER('mystring');
SELECT myinteger
FROM mytable
WHERE myvarchar IS NULL;
SELECT myinteger
FROM mytable
WHERE myvarchar IS NOT NULL;
SELECT myinteger
FROM mytable
WHERE myinteger BETWEEN 111 AND 999;
SELECT myinteger
FROM mytable
WHERE myvarchar LIKE 'MI%';
By default, acts in a similar war to 'LIKE'...
SELECT *
FROM mytable
WHERE REGEXP_LIKE(mycolumn, 'mystring');
To make the comparison case-insensitive...
SELECT *
FROM mytable
WHERE REGEXP_LIKE(mycolumn, 'mystring', 'i');
To make REGEXP_LIKE act like '='...
SELECT *
FROM mytable
WHERE REGEXP_LIKE(mycolumn, '^mystring$');
SELECT myinteger
FROM mytable
WHERE myinteger = 111
AND myvarchar = 'MIKE';
SELECT myinteger
FROM mytable
WHERE myinteger = 111
OR myvarchar = 'MIKE';
ALTER SESSION SET NLS_SORT=BINARY_CI;
ALTER SESSION SET NLS_COMP=LINGUISTIC;
CREATE INDEX myindex
ON mytable
(NLSSORT(mycolumn,'NLS_SORT=BINARY_CI'));
SELECT *
FROM mytable
WHERE REGEXP_LIKE(mycolumn, 'mystring', 'i');
SELECT *
FROM mytable
WHERE mycolumn COLLATE BINRY_CI = 'mystring';