Mantık gayet basit. Birbiriyle eşleşmeyen varsa dışarıda kalıyor. Örneğin böyle bir tablomuz olduğunu düşünürsek
CREATE TABLE urun (`id` int);
INSERT INTO urun (`id`) 
VALUES	(1),(2),(3),(4),(5),(6),(7),(8),(9),(10);

CREATE TABLE urundetay (`id` int, `uid` int);
INSERT INTO urundetay (`id`,`uid`) 
VALUES	(1, 1),	(2, 2),	(3, 3),	(4, 4),	(5, 5),	(6, 7);
Yöntem 1
SELECT u.id FROM urun as u 
WHERE NOT EXISTS (SELECT * FROM urundetay as d WHERE d.uid = u.id )
Yöntem 2
SELECT u.id FROM urun as u 
LEFT OUTER JOIN urundetay as d ON u.id = d.uid
where d.uid IS NULL
Çıktısı
+-----+
| id  |
+-----+
|  6  |
|  8  |
|  9  |
|  10 |
+-----+