我在Teradata 15.10.03.01中遇到以下问题。这是关于逗号分隔的列比较。考虑下面提到的数据和预期的结果。快速回复赞赏。提前致谢。TERADATA逗号分隔列比较
CREATE MULTISET TABLE TESTDB.TESTTABLE1 ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT,
DEFAULT MERGEBLOCKRATIO
(
A VARCHAR(250) CHARACTER SET LATIN NOT CASESPECIFIC,
B VARCHAR(250) CHARACTER SET LATIN NOT CASESPECIFIC,
C VARCHAR(250) CHARACTER SET LATIN NOT CASESPECIFIC)
PRIMARY INDEX (A);
CREATE MULTISET TABLE TESTDB.TESTTABLE2 ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT,
DEFAULT MERGEBLOCKRATIO
(
A VARCHAR(250) CHARACTER SET LATIN NOT CASESPECIFIC,
B VARCHAR(250) CHARACTER SET LATIN NOT CASESPECIFIC,
C VARCHAR(250) CHARACTER SET LATIN NOT CASESPECIFIC)
PRIMARY INDEX (A);
INSERT INTO TESTDB.TESTTABLE1 VALUES('A1','B1','C1');
INSERT INTO TESTDB.TESTTABLE1 VALUES('A2','B2','C2');
INSERT INTO TESTDB.TESTTABLE1 VALUES('A3',NULL,'C3');
INSERT INTO TESTDB.TESTTABLE1 VALUES('A4',NULL,'C4');
INSERT INTO TESTDB.TESTTABLE1 VALUES(NULL,'B5','C5');
INSERT INTO TESTDB.TESTTABLE1 VALUES(NULL,'B6','C6');
INSERT INTO TESTDB.TESTTABLE1 VALUES(NULL,NULL,'C7');
INSERT INTO TESTDB.TESTTABLE1 VALUES(NULL,NULL,'C8');
INSERT INTO TESTDB.TESTTABLE2 VALUES('A1','B1','C1');
INSERT INTO TESTDB.TESTTABLE2 VALUES('A3',NULL,'C3');
INSERT INTO TESTDB.TESTTABLE2 VALUES(NULL,'B5','C5');
INSERT INTO TESTDB.TESTTABLE2 VALUES(NULL,NULL,'C7');
SELECT * FROM TESTDB.TESTTABLE1;
A B C
-------------
A1 B1 C1
A2 B2 C2
A3 C3
A4 C4
B5 C5
B6 C6
C7
C8
SELECT * FROM TESTDB.TESTTABLE2;
A B C
------------
A1 B1 C1
A3 C3
B5 C5
C7
预期的结果:
A B C
-------------
A2 B2 C2
A4 C3
B6 C6
我试着用下面的查询,但它没有返回记录。
SELECT T1.A,T1.B,T1.C
FROM TESTDB.TESTTABLE1 T1
WHERE (T1.A,T1.B)
NOT IN
(
SELECT T2.A,T2.B
FROM TESTDB.TESTTABLE2 T2
)
;
任何机构请帮助框架查询?
解释为什么我的查询没有返回任何记录赞赏。
凝聚你的空(大多数这个问题是作为一个整体的代码块中,'下面不滚动issue'不出来的。请花时间去的想法[如何提出一个好问题]。) – greybeard