1

私はこれを持っています:

Dim strS As String = ""
Dim strRowFilter As String = "SID=" & strSID
Dim dv As DataView = objDataSet.Tables(1).DefaultView
dv.RowFilter = (strRowFilter)
dv.Sort = ("RIGHT(SName, CHARINDEX(' ', REVERSE(' ' + RTRIM(SName))) - 1)")
For Each objDataRow As DataRow In dv
            'build strS
        Next

Return strS

SNameは形式の文字列Firstname Midname Lastname(ミッドネームはオプション) であり、 で並べ替える必要がありますLastname。'Mike St. Cloud' のような特殊なケースがあることは知っていますが、最後の単語でソートしても問題ありません。上記のコードは私に与えていますSystem.IndexOutOfRangeException occurred: Cannot find column RIGHT(SName.

SQL Server でとして機能するthisから並べ替え用語を取得しました。ORDER BY私はこれについて深く理解していないので、助けていただければ幸いです。

4

2 に答える 2