2017-08-26 4 views
0

Ich habe zwei Tabellen erstellen und die Daten gespeichert sind, wie in den beiden TabellenSpalten in zwei Tabellen vergleichen und eine SQL-Ansicht

tabela gezeigt:

cert_id custid 
----------------- 
    002 C1 
    003 C1 
    004 C1 
    005 C1 
    006 C1 
    007 C2 
    008 C2 
    009 C2 
    010 C2 

TableB:

cert_id     custid 
------------------------------- 
002, 003, 004   C1 
008, 010    C2 

Ich versuche zu erstellen, wo es für die gleichen Daten in TableB (cert_id) und wenn es in th übereinstimmt Die Spalte sollte nicht in der Ansicht sein.

aus dem obigen Beispiel, was auch immer cert_id in der Spalte ist es dann in der anderen Tabelle vergleichen, soll diejenigen aufgelistet, die

So ist die neue Ansicht in etwa so zeigt, nicht in TableB sind, soll:

Ansicht1:

cert_ids 
-------- 
005 
006 
007 
009 
+0

Welche [DBMS] (https://en.wikipedia.org/wiki/Database) verwenden Sie? Postgres? Orakel? DB2? Feuervogel? –

Antwort

0
select a.cert_id from tablea a inner join tableb b 
on b.cert_id not like'%'+ a.cert_id +'%' 
and a.custid=b.custid 

http://sqlfiddle.com/#!6/2c90dc/1

+0

Beachten Sie, dass dies Nicht-Standard-SQL ist. In SQL ist der Verkettungsoperator '||' nicht '+' –

Verwandte Themen