2012-05-10 49 views
1

我一直試圖找到一種方法,即使是在這個搜索沒有多少運氣SSRS排序。控制在基於數據庫的文本字段

基本上,我有一個表中的文本字段。我所要做的就是檢查該文本字段是否包含特定的字符串,在這種情況下,如果該字段包含「OLD」,「OBSOLETE」或「FOM」,然後將其移動到列表的最底部,一切排序正常。這可能嗎?我試圖做到這一點,如果沒有太多的SQL語句本身。

回答

0

您可以通過在相關排序表達/功能使用switch語句做到這一點。從邏輯上講,switch()與case語句非常相似。

在「排序選項」添加一個新的排序訂單項(或修改現有的項目)通過點擊表達式按鈕向右(FX)

然後修改類似於此排序表達式:

=Switch(Fields!YourField.Value="Old","xxx", 
     Fields!YourField.Value="Obsolete","yyy", 
     Fields!YourField.Value="Fom","zzz", 
     1=1,Fields!YourField.Value) 

這將創建一個替代進行排序,你提到的xxx,YYY,ZZZ &有效的排序值移動到列表的末尾項的值switch語句。他們的顯示值將保持不變。

開關停止時,發現第一個真正的評估;所以最後的1 = 1基本上就是otherwise子句,它表示無論您的字段在不老,過時或fom時的實際價值是什麼。

+0

我認爲這是正確的。實際上我試圖讓它實際上工作。因爲這假設整個字符串只是「舊」,「過時」等我試圖做一個檢查在每個級別,看看我能否得到這個工作應該如何。 – Sevdarkseed

相關問題