sql - MySQL query - show results that are not in another table -


मेरे पास एक क्वेरी है:

  SELECT lesson.id, p1.first_name, P1.surname, start_time, instrument.name सबक से, व्यक्ति के रूप में पी 1, व्यक्ति ए पी 2, लिखत, इनवॉइस_अथोन कहां पाठ। विषय = p1.id और पाठ। टीचर = p2.id और instrument.id = lesson.instrument_id आदेश द्वारा उपनाम  

हालांकि, मैं इसे संशोधित करना चाहूंगा ताकि यह केवल परिणाम दिखाएगा जहां lesson.id तालिका में नहीं है invoice_lesson.lesson_id । क्या यह एक सहसंबद्ध क्वेरी है? मैं यह कैसे कर सकता हूं?

आप इसे बाहरी सहभागी से कर सकते हैं:

  SELECT lesson.id, p1.first_name, p1.surname, start_time, instrument.name सबम से I JOIN व्यक्ति p1 ON l.student = p1.id JOIN व्यक्ति P2 ON l.teacher = p2.id I पर i.id = l.instrument_id LEFT JOIN इनवॉइस_अथान आईएल ON l.id = IL.lesson_id WHERE IL.lesson_id नाम से उपनाम है  

यह दृष्टिकोण सहसंबद्ध subquery से बहुत तेज हो जाएगा दृष्टिकोण।


Comments

Popular posts from this blog

c# - ListView onScroll event -

PHP - get image from byte array -

Linux Terminal Problem with Non-Canonical Terminal I/O app -