Teradata SQL - 用于CASE OF DATA的假脱机语法

时间:2014-10-22 20:29:32

标签: sql teradata uppercase

我有一个VARCHAR(10)列,其值可以存储为' Abxxx'和' abxxx'

在此字段(Column1)上进行分组时,它们都将返回大写字母' Abxxx'即使有小写值' abxxx'在数据中。

我可以使用什么语法在假脱机中的不同行中返回唯一数据值?

只读访问权限。

SELECT
    Column1, COUNT(unique_id)
FROM
    Table
GROUP BY 
    Column1

期望的结果:

Abxxx 345    abxxx 5678

2 个答案:

答案 0 :(得分:1)

使用(CASESPECIFIC)将获得您想要的结果:

Select Column1 (CASESPECIFIC), count(unique_id)
FROM Table
GROUP BY Column1 (CASESPECIFIC)

答案 1 :(得分:0)

请务必使表格列具体,请参阅下文。

-- Create a table with one column case-insensitive, another column case-sensitive
   CREATE TABLE cities
   (
      name VARCHAR(80) NOT CASESPECIFIC,
      name2 VARCHAR(80) CASESPECIFIC
   );

   -- Insert a row
   INSERT INTO cities VALUES ('San Diego', 'San Diego');

   -- Name column is case-insensitive
   SELECT * FROM cities WHERE name = 'SAN DIEGO';
   -- Output: San Diego

   -- Name2 column is case-sensitive
   SELECT * FROM cities WHERE name2 = 'SAN DIEGO';
   -- No rows found