[C#]リストをカンマ区切りの文字列で出力する

投稿日:2018-05-23

リストの項目をカンマ区切りで出力したい

卵が先か鶏が先か~って話じゃないんですが、リストで出力した内容をカンマ区切りのデータにする必要が出てきたので、調べました。

List<string> items = new List<string>(){"a","b","c",...};
string str = String.Join(",",items);

これで「a,b,c,…」って文字列で取得できます。

項目数が可変となる項目を変数にする

何でこんな事態になったのかっていうと、そもそも引数が可変ってだけでウンザリなんですが、リスト取得されている項目に、取得したデータが該当するかどうかを判定させる必要が出てきたからなんです。

まぁ、そんだけなら明細単位でループ処理でも関数作成でも何でも出来るけど、今回はSQLで取得する必要がありまして。

元々のデータ自体が「a,b,c」って感じでカンマ区切りな物が、カンマを区切り文字としてリストとして取得されているものを使用する必要があったため、どうしたものかと。

当然ながら、可変の項目のためハードコーディングなんか出来ません。

項目数に応じてWhere句を拡張してもいいんだけど、ループ処理の確認とかも必要だしで面倒だなぁと思ってた矢先に見つけた。

SELECT * 
FROM test_table
WHERE
  CD IN (:cd)

って感じでIN句に入れてやりゃOKだわw

って思ったのが間違いでした。

続く・・・







-C#, ORACLE, 開発メモ
-,

関連記事

SQL文中で全角文字を使うなと言われたので、ORACLEでJOIN句の条件式をCASE文で分岐させる

JOINの条件式にCase文を入れる http://blog.goo.ne.jp/ilikehobby/e/80b471f96f6d693b6c5df75f18591c0e SQL文中で全角文字を使う …

C#で計算時の切り上げ・切捨て・四捨五入を行う方法

普段使わないと馴染みが薄いですが、日常で行う計算にも切り上げ・切捨て・四捨五入は割りと使われていたりします。 今回はそんな計算のお話。 例えば、クルマ購入時の端数の切捨てとかね。 「千円の位を負けてく …

[C#]NumericUpDownコントロールで、上下キーでの値変更を禁止する

結論から言うと、「InterceptArrowKeys」プロパティをfalseにしてやることで解決。 NumericUpDownコントロールを使うメリット 画面構築をしている際、ユーザーの任意入力項目 …

改めて、コマンドプロンプトのrobocopyコマンドでバックアップを行う。

以前、会社では、バックアップ用のソフトを使っていたことがあります。 それも、社内ではなく、お客様用にw まぁ、それ自体は良いんですが、割とケチ?な会社だったので、使っているのはフリーソフト。 確か、商 …

ORACLE:普段使っていないと、どうしても忘れるSQLメモ。

逆引きSQL構文集 文字列を置換する http://www.sql-reference.com/string/translate.html 文字列を連結する http://www.sql-refere …


カテゴリー