OSB プロジェクトで XQuery を使用してデータベースにクエリを実行しています。次の表を検討してください。
userId Name Category
------ ------- --------
1 Dheepan Student
2 Raju Student
と XQuery
let $userName:=fn-bea:execute-sql(
$dataSourceJndiName,
xs:string("NAME"),
xs:string("select NAME from USER where CATEGORY= 'Student'")
)/*:NAME[1]
return <root> {data($userName)} </root>
このクエリでは、結果を として取得してい<root>Dheepan Raju</root>
ます。ただし、クエリが次のように複数の行を返す場合でも、1 行だけを返す必要があります<root>Dheepan</root>
。クエリで述語を使用[1]
しましたが、値を連結して返す理由がわかりません。複数の行が返されるときに最初の行のみを返す方法を教えてください。