2016-04-13 34 views
-1

Aynı anda üç farklı değişken göstermeye çalışıyorum. İşte denedim.Xquery'de değişkenler yalnızca bir kez nasıl görüntülenir?

  let $totalmovies := count(//Movies/Movie) 
     let $averagevariton:=(count(//Movies/Movie/secondtitles/OtherTitleName) + count(//Movies/Movie/Title)) div $totalmovies 

     for $m in //Movies/Movie 
     let $year := (max($m/secondtitles/Year) - min($m/secondtitles/Year))+1 

     order by $year descending 

     return ($totalmovies,$averagevariton,$year) 

Ancak, şu anda, döngü yapılıncaya kadar değerleri yazdırmaya devam ediyor. Bu değerleri yalnızca bir kez nasıl görüntüleyebilirim?

cevap

0

Doğru çıktı belki sadece böyle $year değişkeni, bir şeyler doldurmak için for döngü kullanmak istiyorum, ne olması gerektiği açık değildir:

let $totalmovies := count(//Movies/Movie) 
let $averagevariton:= (count(//Movies/Movie/secondtitles/OtherTitleName) + count(//Movies/Movie/Title)) div $totalmovies 
let $year := 
    for $m in //Movies/Movie 
    let $diff := (max($m/secondtitles/Year) - min($m/secondtitles/Year))+1 
    order by $diff descending 
    return $diff 
return ($totalmovies,$averagevariton,$year) 
+0

hi, çıktıda hiçbir yıl yok. – user2775042

+0

@ user2775042 Lütfen basitleştirilmiş XML örneğini ve eski çıktıları yayınlayın. Bu cevap tahmin edebileceğim en uzak (ve istekli). Teşekkürler – har07

+0

üzgünüm benim hatamdan dolayı hiçbir yıl yoktu. – user2775042