में एक अस्थायी तालिका मैं एक Oracle 10g डाटाबेस के साथ काम कर रहा हूँ बनाएँ, और मैं एक मेज से रिकॉर्ड के एक समूह को निकालने, और उसके बाद का उपयोग करें कि संबंधित तालिकाओं का एक समूह से बाहर रिकॉर्ड खींचने के लिए करना चाहते हैं।PL/SQL
इस तो T-SQL थे मैं इसे इस तरह कुछ करना चाहते हैं,:,
CREATE TABLE #PatientIDs (
pId int
)
INSERT INTO #PatientIDs
select distinct pId from appointments
SELECT * from Person WHERE Person.pId IN (select pId from #PatientIDs)
SELECT * from Allergies WHERE Allergies.pId IN (select pId from #PatientIDs)
DROP TABLE #PatientIDs
हालांकि, सभी उपयोगी पृष्ठों मैं मेकअप को देखो यह एक बहुत अधिक काम की तरह लग रहे तुलना में यह संभवतः हो सकता है तो मुझे लगता है कि मुझे कुछ स्पष्ट याद आना चाहिए।
(बीटीडब्लू, इसे एक स्क्रिप्ट के रूप में चलाने के बजाय, मैं शायद ओरेकल एसक्यूएल डेवलपर में एक सत्र खोलूंगा, अस्थायी तालिका बनाउंगा, और उसके बाद प्रत्येक क्वेरी को चलाऊंगा, सीएसवी को निर्यात करूँगा जैसा कि मैं साथ जाऊंगा। कि काम करता है?)
धन्यवाद!
क्यों आप अस्थायी तालिका कदम की जरूरत है? आप बस एक चयन को दूसरे के साथ बदल रहे हैं। क्या प्रारंभिक चयन बहुत महंगा है - या यदि समवर्ती लेन-देन चीजों को बदलता है तो क्या यह है? –
ओरेकल SQL सर्वर नहीं है, और ऐसी परिस्थितियां जहां हमें अस्थायी तालिकाओं का उपयोग करने की आवश्यकता है, वास्तव में काफी असामान्य हैं। http://stackoverflow.com/questions/1192265/local-temporary-table-in-oracle-10-for-the-scope-of-stored-procedure/1193443#1193443 – APC
मैं: कृपया इस समान प्रश्न करने के लिए अपने जवाब पढ़ें सरलीकृत कर रहा था - जो मैं वास्तव में करने की कोशिश कर रहा था वह पिछले 100 रोगियों को पकड़ लेता था (कम से कम डुप्लिकेशंस)। लेकिन नीचे बात करते हुए मुझे याद दिलाया कि मैं आज सुबह मध्यरात्रि से शुरू होने वाले 100 मरीजों को पकड़ सकता हूं, और साथ ही साथ चलने के बाद SYSDATE के बारे में चिंता करने की ज़रूरत नहीं है। :-) – SarekOfVulcan