मेरे पास बाहरी स्ट्रिंग एक स्ट्रिंग के रूप में आ रही है और मैं उस पर एक स्विच/केस करना चाहता हूं। मैं xquery में ऐसा कैसे करूं?आप XQuery में स्ट्रिंग पर कैसे स्विच करते हैं?
उत्तर
XQuery 1.1 के साथ शुरू, का उपयोग स्विच:
http://www.w3.org/TR/xquery-11/#id-switch
switch ($animal)
case "Cow" return "Moo"
case "Cat" return "Meow"
case "Duck" return "Quack"
default return "What's that odd noise?"
XQuery में तत्वों के अलावा किसी अन्य चीज़ पर स्विच करने के लिए कोई फ़ंक्शन नहीं है।
पहली चीज जो आप करते हैं वह आपकी स्ट्रिंग को तत्व में परिवर्तित कर देती है।
let $str := "kitchen"
let $room := element {$str} {}
तो सिर्फ एक सामान्य स्विच करने के लिए typeswitch का उपयोग करें:
return typeswitch($room)
case element(bathroom) return "loo"
case element(kitchen) return "scullery"
default return "just a room"
कृपया ध्यान दें, यह एक MarkLogic एकमात्र समाधान हो सकता है।
if ($room eq "bathroom") then "loo"
else if ($room eq "kitchen") then "scullery"
else "just a room"
एक typeswitch का उपयोग छिपा है क्या तुम सच में कर रहे हैं:
बस अगर भाव की एक श्रृंखला का उपयोग करें।
इनमें से कौन सी विधियां सबसे अधिक कुशल हैं आप XQuery प्रोसेसर पर निर्भर करते हैं। एक आदर्श दुनिया में यह केवल स्वाद का विषय होना चाहिए, क्योंकि यह उपयुक्त विधि का चयन करने के लिए अनुकूलक के लिए नीचे होना चाहिए, लेकिन यदि प्रदर्शन महत्वपूर्ण है तो यह दोनों संस्करणों को बेंचमार्क करने योग्य है। अगर कोई प्रोसेसर आपके उदाहरण से नोड निर्माण को अनुकूलित करता है तो मुझे आश्चर्य होगा, और मेरे उदाहरण को एक विशेष स्विच में अनुकूलित नहीं किया।
कभी-कभी यह छिपाने के लिए अच्छा और सुरुचिपूर्ण है कि आप वास्तव में क्या करते हैं अगर आप यह नहीं भूलते कि आप इसे कर रहे हैं ... – Ar3s
मैंने इसे वोट दिया क्योंकि सवाल स्विच/केस के सिंटैक्स को खोजने की कोशिश कर रहा है, अगर नहीं। – Sixty4Bit
@ Sixty4Bit - जब मैंने सवाल का जवाब दिया तो स्विच का व्यवहार अंतिम रूप दिया गया था, इसलिए मैंने फरवरी में अपना दूसरा जवाब पोस्ट किया था! –
सेक्सन के लिए आप कुछ इस तरह उपयोग कर सकते हैं:
declare function a:fn($i) {
typeswitch ($i)
case element(a:elemen1, xs:untyped) return 'a'
case element(a:elemen2, xs:untyped) return 'b'
default return "error;"
};
सादर
http://rrusin.blogspot.com/2010/01/embedding-xquery-in-java.html
अपने प्रोसेसर XQuery 1.1 का समर्थन करता है, तो आप बस कर सकते हैं:
switch ($room)
case "bathroom" return "loo"
case "kitchen" return "scullery"
default return "just a room"
- 1. आप फ्लास्क पर क्वेरी स्ट्रिंग कैसे प्राप्त करते हैं?
- 2. आप जावा में स्ट्रिंग कैसे शुरू करते हैं?
- 3. आप आरएफसी पर कैसे टिप्पणी करते हैं?
- 4. आप आईफ्रेम पर कैसे पोस्ट करते हैं?
- 5. xQuery
- 6. एंड्रॉइड पर, आप प्रोग्रामेटिक रूप से गतिविधियों को कैसे स्विच करते हैं?
- 7. आप एक्शनस्क्रिप्ट में एक स्ट्रिंग में एक बूलियन कैसे परिवर्तित करते हैं?
- 8. आप आईफोन सिम्युलेटर में डिफ़ॉल्ट डिवाइस कैसे सेट करते हैं?
- 9. आप प्रोटोटाइप कैसे करते हैं?
- 10. आप एक्सकोड में टीडीडी कैसे करते हैं?
- 11. आप स्विंग में टेक्स्टफील्ड पर फ़ोकस कैसे सेट करते हैं?
- 12. आप विंडोज़ पर जीआईटी में कैसे विलय करते हैं?
- 13. आप IUnityContainer कैसे नकल करते हैं?
- 14. आप मेमोरीस्ट्रीम से स्ट्रिंग कैसे प्राप्त करते हैं?
- 15. आप postgresql में mysqldump कैसे करते हैं?
- 16. रूबी में आप पॉलिमॉर्फिज्म कैसे करते हैं?
- 17. खाली स्ट्रिंग पर एनजी-स्विच
- 18. आप कैसे प्रतिक्रिया करते हैं?
- 19. परिणाम अलग होने पर आप यूनिट परीक्षण कैसे करते हैं?
- 20. आप HTTPS को HTTP पर कैसे रीडायरेक्ट करते हैं?
- 21. XQuery
- 22. XQuery
- 23. जावास्क्रिप्ट स्ट्रिंग प्रतिस्थापन - आप प्रतिस्थापन स्ट्रिंग में मिलान किए गए चर का उपयोग कैसे करते हैं?
- 24. XQuery
- 25. जब आप अनुवादित पाठ में लिंक करते हैं तो आप गेटटेक्स्ट का उपयोग कैसे करते हैं?
- 26. सी ++ में लिनक्स पर आप ऑडियो (WAV पर) कैसे चलाते हैं या रिकॉर्ड करते हैं?
- 27. किसी प्रोजेक्ट पर अकेले काम करते समय आप अपने आप को कैसे सक्रिय करते हैं?
- 28. क्या आप विम में सी ++ कोड डीबग करते हैं? कैसे?
- 29. आप UIBarButtonItem पर फ़ॉन्ट आकार कैसे सेट करते हैं?
- 30. आप UITabBarItem पर शीर्षक को कैसे अनुकूलित करते हैं?
यह समाधान (चाहिए) किसी भी XQuery प्रोसेसर में काम करेंगे, लेकिन सीधा नेस्टेड अगर समाधान के रूप में के रूप में स्पष्ट नहीं है। –
अगर मैं सिर्फ घोंसला से नफरत करता हूं। मुझे XQuery 1.1 उदाहरण पसंद है इसलिए मैंने इसे उत्तर के रूप में चिह्नित किया। – Sixty4Bit