mysql - SQL Query - Compare all rows from temp table -
मेरे पास एक टेबल है कमरे और एक अस्थायी तालिका
Room_Nums
कमरे तालिका के लिए कॉलम:
कमरे (ID, room_name, max_Adults, max_Children); - कमरा मूल्यों में INSERT (1, "कक्ष ए", 2,1), (2, "कक्ष बी", 2,5), (3, "कक्ष सी", 3,1); अस्थायी सारणी: <पूर्व> अस्थायी तालिका यदि मौजूदा कक्ष_नों; अस्थायी टेबल रूम_न्यूम्स बनाएं (आईडी इंट (1), वयस्क इंट (2), बच्चे इंट (2)); - Room_Nums VALUES (INR1,20), (2,2,5) में INSERT भरें;
मैं केवल को कमरे का चयन करना चाहता हूं जिसमें max_adults + max_children Room_Nums से आईडी के साथ Room_Nums में सभी पंक्तियों से छोटा या बराबर ( & lt; = ) P> संपादित करें
यह MySQL है।
यदि Room_Nums में 2 पंक्तियाँ हैं तो इसका मतलब है कि मैं 2 कमरों से पूछता हूं जो मैच वयस्क + बच्चा ex।
का चयन करें r.room_name, rn.Adults, rn.children, rn.ID से कमरे में आर शामिल करें Room_Nums rn ON ( Rn.Adults & lt; = r.max_Adults और rn.children & lt; = r.max_Children) 2 संपादित करें
इसके लिए पूछना:
- 1 कमरा: 2 वयस्क और amp; 0 बच्चे
- 1 कमरा: 2 वयस्क और amp; 5 बच्चे
परिणाम होना चाहिए:
---------------------- ------------------------- | कमरा नाम | वयस्क | बच्चे | Room_Nums.ID | | ----------------------------------------------- | कक्ष ए | 2 | 0 | 1 | ----------------------------------------------- | कक्ष बी | 2 | 5 | 1 | ----------------------------------------------- | कक्ष बी | 2 | 5 | 2 | ----------------------------------------------- खाली परिणाम दिखाएं यदि उसे Room_Nums से कोई पंक्ति नहीं मिलती।
यद्यपि, यह बिल्कुल स्पष्ट नहीं है, "सभी पंक्तियों" का क्या मतलब है, हो सकता है यह काम करेगा
रूम_नाम चुनें, max_adults + max_children, Room_nums.ID कमरे से रूम_एनम से कमरे में शामिल हो जाएं। कमरे = आईडी__ कक्ष_आइटम। जहां max_adults + max_children & lt; = (Room_nums से न्यूनतम (वयस्क + बच्चों का चयन करें);
Comments
Post a Comment