都内で働くSEの技術的なひとりごと

都内でサラリーマンやってます。マイクロソフト系(たまに、OSS系などマイクロソフト以外の技術も...)の技術的なことについて書いています。日々の仕事の中で、気になったことを技術要素関係なく気まぐれに選んでいるので記事内容は開発言語、インフラ等ばらばらです。なお、当ブログで発信、発言は私個人のものであり、所属する組織、企業、団体等とは何のかかわりもございません。ブログの内容もきちんと検証して使用してください。よろしくお願いします♪

便利な SQL の関数とか、構文とか、その他色々まとめてみる - その9 ( CHOOSE ) - SQL Server

 便利な....シリーズです。毎回地味な感じですが...今回も地味ですww sys.dm_exec_sessions を使って、下記のようなクエリを書いてみました。いたって普通ですね。SQL Server Management Studio で実行してみましょう。

SELECT 
    [session_id] = session_id,
    [client_interface_name] = client_interface_name,
    [cpu_time] = cpu_time,
    [memory_usage] = memory_usage,
    [total_scheduled_time] = total_scheduled_time,
    [transaction_isolation_level_desc] = 
        CASE 
            WHEN total_scheduled_time = 0 THEN 'Unspecified'
            WHEN total_scheduled_time = 1 THEN 'ReadUncomitted'
            WHEN total_scheduled_time = 2 THEN 'ReadCommitted'
            WHEN total_scheduled_time = 3 THEN 'Repeatable'
            WHEN total_scheduled_time = 4 THEN 'Serializable'
            WHEN total_scheduled_time = 5 THEN 'Snapshot'
        END 
FROM sys.dm_exec_sessions

f:id:koogucc11:20160416121906p:plain

 しかし、CASE WHEN の部分が美しくない気がします。これを CHOOSE を使って書き直します。スッキリして、非常に見やすいクエリとなりました。あと、CASE WHEN より高速だったりするんですよね、多分。

SELECT
    [session_id] = session_id,
    [client_interface_name] = client_interface_name,
    [cpu_time] = cpu_time,
    [memory_usage] = memory_usage,
    [total_scheduled_time] = total_scheduled_time,
    [transaction_isolation_level] =transaction_isolation_level,
    [transaction_isolation_level_desc] = CHOOSE(transaction_isolation_level+1,'Unspecified','ReadUncomitted','ReadCommitted','Repeatable','Serializable','Snapshot') 
FROM sys.dm_exec_sessions

f:id:koogucc11:20160416124955p:plain

できることを、やりましょう!カードでも、Tポイントでも。
donation.yahoo.co.jp
ポンタのポイントでも寄付できます!
www.lawson.co.jp
JALマイレージでも寄付できます!
JALマイレージバンク - 「平成28年熊本地震」被災者支援マイル
ANAマイレージでも寄付できます。
www.ana.co.jp

※子供がピアノをやるので、買わないと。

KORG 電子ピアノ LP-380-WH 88鍵 ホワイト

KORG 電子ピアノ LP-380-WH 88鍵 ホワイト

YAMAHA デジタルピアノ ARIUS(アリウス) YDP-S31

YAMAHA デジタルピアノ ARIUS(アリウス) YDP-S31