2016-07-08 18 views
-5

Ich habe zwei Spalten in einer Tabelle MEM und SUB, wie untenSQL ANFÄNGER QUERY

| MEM | | SUB | 
|-----| |-----| 
| 101 | | 101 | 
| 201 | | 201 | 
| 202 | | 201 | 
| 203 | | 201 | 
| 301 | | 301 | 

Wie kann ich die SUB herauszufinden, welche kein MEM neben sich hat?

Wie kann ich abfragen, um die Zeile wie 101 und 301 zu finden?

PS: Ich bin neu in diesem, verzeihen Sie mir, wenn die Informationen unvollständig sind.

+3

Bitte, [lesen Sie dies] (http://Stackoverflow.com/tour) und kommen Sie zurück, um Ihre Frage zu bearbeiten. –

+1

Welches DBMS benutzen Sie? Postgres? Orakel? –

+0

@TheGameiswar Ich bin neugieriger in welcher Anwendung STRG + SHIFT + L SCHREI MODUS deaktivieren? – Siyual

Antwort

0

Damit erhalten Sie alle Subs, bei denen Mem und Sub nicht identisch sind.

SELECT SUB 
    FROM TABLE 
    WHERE MEM <> SUB 

Dies wird Ihnen eine eindeutige Liste von Subs geben, dass an einem Punkt oder einem anderen, nicht über eine passende MEM haben.

SELECT DISTINCT SUB 
    FROM TABLE 
    WHERE MEM <> SUB 

EDIT:

Ich möchte alle SUB FINDEN OUT THATHAS NUR EINE MEM

Dies ist ein wirklich einfache SQL-Abfrage. Sie werden es wahrscheinlich besser lernen, wenn Sie etwas recherchieren. hier
Egal ist, was Sie brauchen:

SELECT SUB 
    , COUNT(MEM) AS CountOfMem 
    FROM TABLE 
    GROUP BY SUB 
    HAVING COUNT(MEM) = 1 

Wenn dies ist es, sicherzustellen, dass es als beantwortet zu markieren.

+0

DAS LÖST MEINE ANTWORT NICHT. ICH WILL ALLE SUB THATHAS NUR EINEN MEM FINDEN – user6557765

+0

Eine Änderung oben hinzugefügt. – mschmidt