मैं इस तरह एक प्रश्न है है यहाँ तक कि जब जाओ एक प्रश्न हमेशा ठीक एक पंक्ति वापस जाने के लिए,:ओरेकल: कोई डेटा पाया जा सकता है
select data_name
into v_name
from data_table
where data_table.type = v_t_id
आम तौर पर, इस प्रश्न के ठीक एक पंक्ति लौटना चाहिए। जब v_t_id
पर कोई मिलान नहीं होता है, तो प्रोग्राम "कोई डेटा नहीं मिला" अपवाद के साथ विफल रहता है।
मैं जानता हूँ कि मैं PL/SQL में इस संभाल सकता है, लेकिन वहाँ केवल एक प्रश्न में यह करने के लिए कोई तरीका है मैं सोच रहा था। एक परीक्षण के रूप में, मैं कोशिश की है:
select case
when subq.data_name is null then
'UNKNOWN'
else
subq.data_name
end
from (select data_name
from data_table
where data_table.type = '53' /*53 does not exist, will result in 0 rows. Need fix this...*/
) subq;
... लेकिन यह स्पष्ट रूप से काम नहीं करेगा (क्योंकि subq
खाली किया जा रहा subq.data_name is null
के रूप में ही नहीं है)। क्या यह भी संभव है या मुझे अपने पीएल/एसक्यूएल समाधान में जांच करनी चाहिए?
(Oracle 10g)
यदि क्वेरी कोई पंक्ति नहीं लौटाती है तो डेटा_नाम के लिए आप क्या मूल्य चाहते हैं/चाहते हैं? कोई डेटा नहीं मिला स्थिति से निपटने की चुनौती है। –
@ थॉमस: स्ट्रिंग "अनकनाउन" इस परिदृश्य में ठीक काम करेगी। – FrustratedWithFormsDesigner