5
इस क्वेरी में विफल रहता है:क्या पोस्टग्रेएसक्यूएल किसी फ़ंक्शन द्वारा लौटाए गए सरणी से चयन कर सकता है?
SELECT xpath('/my/xpath/expr', my_xml)[1] FROM my_table
ERROR: syntax error at or near "["
लेकिन यह एक काम करता है:
SELECT x[1] FROM
(SELECT xpath('/my/xpath/expr', my_xml) as x FROM my_table) as ss
मेरे xpath एक्सप्रेशन हमेशा केवल एक ही मान देता है, लेकिन Postgres xpath समारोह एक सरणी देता है। मैं सरणी में पहला मान चुनना चाहता हूं। जबकि उप-चयन काम करता है, यह बहुत बदसूरत है।
पहली क्वेरी क्यों काम नहीं करती है, और क्या दूसरी क्वेरी से ऐसा करने का एक क्लीनर तरीका है?
उल्लेखनीय बस समाधान था! मुझे लगता है कि जब संदेह में, अधिक कोष्ठक का उपयोग करें। – DNS