तुम कर सकते हो
SELECT *
from members
UNION
SELECT inventory.*, 'dummy1' AS membersCol1, 'dummy2' AS membersCol2
from inventory;
कहाँ membersCol1
, membersCol12
, आदि ... members
से कॉलम की ऐसे नाम हैं जो inventory
में नहीं हैं। इस तरह संघ में दोनों प्रश्नों में एक ही कॉलम होंगे (मान लें कि inventory
में सभी कॉलम members
जैसा ही हैं जो मेरे लिए बहुत अजीब लगता है ... लेकिन हे, यह आपकी स्कीमा है)।
अद्यतन:
रूप HLGEM कहे अनुसार, इस होगा केवल काम करता है, तो inventory
members
रूप में एक ही नाम वाले स्तंभ हैं, और उसी क्रम में। सभी कॉलम का नामकरण स्पष्ट रूप से सबसे अच्छा विचार है, लेकिन चूंकि मुझे नाम नहीं पता है, इसलिए मैं वास्तव में ऐसा नहीं कर सकता। तो मैंने किया, यह कुछ इस तरह दिख सकता है:
SELECT id, name, member_role, member_type
from members
UNION
SELECT id, name, '(dummy for union)' AS member_role, '(dummy for union)' AS member_type
from inventory;
मैं डमी मूल्यों के लिए शून्य का उपयोग कर क्योंकि तब यह हमेशा स्पष्ट नहीं है जो संघ एक रिकार्ड से आया है का हिस्सा पसंद नहीं है - 'डमी' का उपयोग कर यह बनाता है स्पष्ट करें कि रिकॉर्ड यूनियन के उस हिस्से से है जिसमें रिकॉर्ड नहीं था (हालांकि कभी-कभी इससे कोई फर्क नहीं पड़ता)। इन दो तालिकाओं को संघबद्ध करने का विचार मेरे लिए बहुत अजीब लगता है क्योंकि मुझे बहुत संदेह है कि उनके नाम के साथ 1 या 2 से अधिक स्तंभ होंगे, लेकिन आपने इस सवाल से इस तरह से पूछा कि मैं किसी भी तरह से अपने परिदृश्य में कल्पना करता हूं समझ में आता है।
आप दो अलग-अलग संदर्भों के दो तालिकाओं को क्यों जोड़ना चाहते हैं? – Joe
आप उत्पादन पर चलने वाली किसी भी क्वेरी में चुनिंदा * का उपयोग कभी नहीं करते हैं। आपको हमेशा केवल कॉलम निर्दिष्ट करना चाहिए जो आपको बनाए रखने और प्रदर्शन दोनों के लिए आवश्यक हैं। – HLGEM