やりたいこと
Select文の条件で空白を指定する
以下にDataTable型の変数dt従業員があるとします。
部署が空欄のデータを取得したい場合のSelect文はどのように表現するでしょうか。
開発する時にこのように空白があるデータを取得したい場面に直面して、以下のコードを試してみました。
dt従業員.Select("[部署] = '' ").CopyToDataTable
結果↓
エラーメッセージで「ソースには、DataRowが含まれていません。」が表示されてしまします。
どうやら「''」では空白と認識されていないようです。
調べたところIs Nullを使えば解決できるようです!
dt従業員.Select("[部署] Is Null ").CopyToDataTable
上記のコードで再度書き込みをしてみます。
結果↓
無事に部署が空白のデータを取得することができました!
dt従業員.Select("[部署] Is Not Null ").CopyToDataTable
とすることで、空白以外のデータを取得することもできます!
ひとこと
If文の中で、空白を表現する時は「""」でも表現できるので、Select文でもできると思っていたのですが、これはダメなようです。
条件に空白を含む方法を調べてみたのですが、意外とすぐに出てこなくて解決するまで苦労したので紹介します!
ちなみに開発では、ある列に空白のデータがあれば、そのデータテーブルを抜き出して氏名を全て取得したいというような場面で使いました。
( ..)φメモメモ
ちょっとしたやり方を知っておけば色々な角度からデータを取得することができるので、少しでも参考になれば幸いです!
他にもデータテーブルの操作やSelect文について紹介しているので、ぜひ参考にしてみてください(^^)it-rpa.hatenablog.com