TERA Mode For Strings Comparison - COLLATE
This section defines the translation specification for string in Tera mode with the use of COLLATE.
Description
Tera Mode for string comparison and COLLATE usage
Sample Source Patterns
Setup data
CREATE TABLE employees (
employee_id INTEGER NOT NULL,
first_name VARCHAR(50) NOT CASESPECIFIC,
last_name VARCHAR(50) CASESPECIFIC,
department VARCHAR(50)
);
INSERT INTO employees(employee_id, first_name, last_name, department) VALUES (1, 'George', 'Snow', 'Sales');
INSERT INTO employees(employee_id, first_name, last_name, department) VALUES (2, 'John', 'SNOW', 'Engineering');
INSERT INTO employees(employee_id, first_name, last_name, department) VALUES (3, 'WIlle', 'SNOW', 'Human resources ');
INSERT INTO employees(employee_id, first_name, last_name, department) VALUES (4, 'Marco', 'SnoW ', 'EngineerinG');
INSERT INTO employees(employee_id, first_name, last_name, department) VALUES (5, 'Mary', ' ', 'SaleS ');
INSERT INTO employees(employee_id, first_name, last_name, department) VALUES (6, 'GEORGE', ' ', 'sales ');
INSERT INTO employees(employee_id, first_name, last_name, department) VALUES (7, 'GEORGE ', ' ', 'salEs ');
INSERT INTO employees(employee_id, first_name, last_name, department) VALUES (8, ' GeorgE ', ' ', 'SalEs ');
INSERT INTO employees (employee_id, first_name, last_name, department) VALUES (9, 'JOHN', ' SnoW', 'IT');
INSERT INTO employees (employee_id, first_name, last_name, department) VALUES (10, 'JOHN ', 'snow', 'Finance ');
CREATE TABLE departments (
department_id INTEGER NOT NULL,
department_name VARCHAR(50) NOT CASESPECIFIC,
location VARCHAR(100) CASESPECIFIC,
PRIMARY KEY (department_id)
);
INSERT INTO departments (department_id, department_name, location) VALUES (101, 'Information Technology', 'New York');
INSERT INTO departments (department_id, department_name, location) VALUES (102, 'Human Resources', 'Chicago');
INSERT INTO departments (department_id, department_name, location) VALUES (103, 'Sales', 'San Francisco');
INSERT INTO departments (department_id, department_name, location) VALUES (104, 'Finance', 'Boston');Comparison operation
Case 1: Column constraint is NOT CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
Case 2: Column constraint is CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
Case 3: CAST NOT CASESPECIFIC column to CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
Case 4: CAST CASESPECIFIC column to NOT CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
LIKE operation
Case 1: Column constraint is NOT CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
Case 2: Column constraint is CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
Case 3: CAST NOT CASESPECIFIC column to CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
Case 4: CAST CASESPECIFIC column to NOT CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
IN Operation
Case 1: Column constraint is NOT CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
Case 2: Column constraint is not defined and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
Case 3: Column constraint is CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department
Snowflake
employee_id
first_name
last_name
department
ORDER BY clause
Case 1: Column constraint is NOT CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
Snowflake
employee_id
first_name
Case 2: Column constraint is CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
last_name
Snowflake
employee_id
last_name
GROUP BY clause
Case 1: Column constraint is NOT CASESPECIFIC and database mode is TERA Mode
Teradata
first_name
Snowflake
first_name
Case 2: Column constraint is CASESPECIFIC and database mode is TERA Mode
Teradata
last_name
Snowflake
last_name
HAVING clause
Sample: Column constraint is NOT CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
Snowflake
employee_id
first_name
CASE WHEN statement
Teradata
first_name
last_name
department_full_name
Snowflake
first_name
last_name
department_full_name
JOIN clause
Sample: Column constraint is NOT CASESPECIFIC and database mode is TERA Mode
Teradata
employee_id
first_name
last_name
department_name
Snowflake
employee_id
first_name
last_name
department_name
Related EWIs
PreviousTERA Mode For Strings Comparison - NO COLLATENextANSI Mode For Strings Comparison - NO COLLATE
Last updated
