sql >> データベース >  >> RDS >> Sqlserver

アルファ列の条件付きSQLORDERBY ASC / DESC

    1つのオプション

    ;WITH cQuery AS
    (
       SELECT
           *,
           ROW_NUMBER() OVER (ORDER BY SortColumn) AS RowNum
       FROM
           MyTable
    )
    SELECT
       *
    FROM
       cQuery
    ORDER BY
       RowNum * @Direction --1 = ASC or -1 = DESC
    

    または、私見が少し醜いケース

    ORDER BY
      CASE WHEN 'ASC' THEN SortColumn ELSE '' END ASC,
      CASE WHEN 'DESC' THEN SortColumn ELSE '' END DESC
    


    1. SQL Serverの置き換え、特定の文字の後のすべてを削除

    2. mysqlデータベースに接続し、Androidコードを使用してデータを挿入するにはどうすればよいですか?

    3. SQL Serverの列のデータ型をどのように変更しますか?

    4. SQLServerのCTEのガイド