1
我對xquery完全陌生,我遇到問題,無法從我的xml代碼中獲取正確的東西。使用xquery進行查詢處理
這裏是我的xml文件的樣本,我的工作就:
<root>
<name id = "a">
<first> Mary </first>
<last> Britton </last>
<company> ABC </company>
<phone> 203-942-0485 </phone>
</name>
<paper pid = "b">
<pname> Hello </pname>
<author> a </author>
</paper>
<publish>
<pbid> b </pbid>
<location>
<place> new york </place>
<sales> 100 </sales>
</location>
<location>
<place> los angeles </place>
<sales> 200 </sales>
</location>
</publish>
我試圖讓筆者所在的公司和電話號碼,對於那些誰已經在紐約出版與至少50個銷售。
現在,我只能得到位置信息,甚至沒有發佈信息。有關如何思考這個問題的任何提示或幫助?提前致謝!
非常感謝!我還有一個問題,你可以在xpath中排序嗎?我知道你可以通過xquery來完成訂單。例如,如果我想根據發佈中的pbid對結果進行排序,我應該怎麼做?謝謝! –
@CathyClaires,不,你不能在XPath中排序(除非在初始評估上下文中提供了一個可用於排序的函數)。如果你想使用XQuery,那麼你可以使用'order by'子句。 –
@CathyClaires,像這樣的XQuery:'爲$ X在 \t \t \t/* /名稱[以$ AUID在@id, \t \t \t \t $ P在/ * /文[作者EQ $ AUID], $ p中\t \t \t \t $ PID/@ PID \t \t \t \t返回 \t \t \t \t總和(/ * /發佈[pbid [1]當量$ PID] \t \t \t \t /位置[地方當量 '紐約'] \t \t \t \t /銷售 \t \t \t \t) \t \t \t \t GE 50 \t \t \t] 爲了通過(對於在$ @id AUID, $ p in/*/paper [author eq $ auid] \t \t \t \t return \t \t \t \t $ p/@ pid ) return $ x /(company |電話)' –