Subquery

Ein Subquery ist eine Abfrage, innerhalb einer Abfrage.

Subquery Syntax

SELECT * FROM tabellen1 WHERE id IN (SELECT id from tabellen2)

Im folgenden Beispiel möchten wir alle User selektieren, die schonmal eine Frage gestellt haben:

SELECT * FROM users WHERE id IN (3,5,7)

Wir möchten alle User mit einer bestimmten ID selektieren. Mittel „IN“ können wir eine komma-separierte Liste mit ID’s angeben, die Benutzer mit diesen ID’s werden selektiert. Nun möchten wir aber mit einem Subquery alle User ID’s selektieren, die in der Tabelle „questions“ vorkommen und mit dieser Liste die User selektieren, die mindestens eine Frage gestellt haben:

SELECT * FROM users WHERE id IN (SELECT DISTINCT user_id FROM questions)

Meistens kann man einen Subquery auch durch einen JOIN ersetzen, aber Subqueries sind in der Regel einfacher zu programmieren und performanter:

SELECT DISTINCT users.* FROM users JOIN questions ON (users.id = questions.user_id)

Deprecated: Directive 'allow_url_include' is deprecated in Unknown on line 0
vConsole
14:36:26
Uncaught TypeError: Cannot read properties of null (reading 'style')
/andere/index.php?name=subquery.php&ordner=andere:5446:53
14:36:27
Uncaught SyntaxError: Unexpected token '<'
/js/index.php?js=3.2.1-jquery.min.js:4:22481
14:36:27
Uncaught SyntaxError: Unexpected token '<'
/js/index.php?js=MooTools.min.js:5:5095
14:36:27
Uncaught SyntaxError: Unexpected token '<'
/js/index.php?js=EnlighterJS.min.js:3:17773
14:36:27
Uncaught TypeError: window.addEvent is not a function
/andere/index.php?name=subquery.php&ordner=andere:2787:8
14:36:27
Uncaught SyntaxError: Unexpected token '<'
/js/index.php?js=pace.js:896:26
14:36:27
Uncaught SyntaxError: Unexpected token '<'
/js/index.php?js=cookieconsent.min.js:1:20809
14:36:27
Uncaught SyntaxError: Unexpected token '<'
/js/alljs.php:408:2
14:36:26
WeChatLib: 0 (xxxx.xx.xx)
14:36:27
System: Unknown
14:36:27
Protocol: HTTPS
14:36:27
UA: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
14:36:27
navigationStart: 1744036585556
14:36:27
navigation: 8ms
14:36:27
dns: 116ms
14:36:27
tcp (ssl): 223ms (113ms)
14:36:27
request: 512ms
14:36:27
response: 109ms
14:36:27
domComplete (domLoaded): 889ms (812ms)
14:36:27
loadEvent: 12ms
14:36:27
total (DOM): 1764ms (1751ms)