![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.2ベストアンサー
- 回答日時:
No1の方が言いたいこと良くわかります。
けして、質問の意味取り違えていませんよ。>文字列を数値変換して比較、またはデータベースから取得したデータを文字列に変換して比
問題になるのは、対象となるデーターの背景です。何のデーターを対象としているかです。
例えば、計測又は計量したデーター10.10 と10.1 では意味が違いますね。10.10では100分の1まで計測したが100分の1は0だったという意味です。10.1は10分の1までの計測で、100分の1の値は不明と言うことです(又は四捨五入などの圧縮したデーター)。
数値的には同じ10.1ですが、何桁で扱うかが問題になります。DBでデーター型で扱う利点は、このような時に精度をそろえられるところにあります。文字列として扱ってしまうと、余計な(0と言う文字を追加)作業が出てくる場合もあります。
逆にそんなのどうでもいい、と言う場合もたくさんあり、ケースbyケースです。
文字列として"10.10" == "10.1"なるのかと言う問題ですね。これを==で結びたいときは数値として扱うべき、そうでない時は文字列として扱うと簡単です。
と言うことで回答はケースbyケースです。
No.1
- 回答日時:
プログラム言語(バージョン)、データベース種別、接続環境、などがないので具体的なことはいえませんが、方法としては、
CSVファイルを開き1件ずつデータを読み、
ユニークキー情報となるものを元に対象レコードを開き
比較し、
違うものに関しては更新する。
データベースのデータ型で比較するのが良いと思います。
>またどのように比較すればいいのでしょうか。
VBではif文を使って比較しますが、なんか質問の意味を取り違えているような気が、、、
件数によっては、
DBに比較用のテーブルをつくり、
CSVレコードをDBに登録し、
SQLにて元テーブルをアップデートをする。
というような方法もありえると思います。
この回答への補足
回答ありがとうございます。
説明不足ですみません。
開発言語:VB.net(Visual Studio 2005)
データベース:SQL Server 2005
データベースから取得してDataSetに格納しています。
この取得したDataSetの値とCSVの値が異なっているかをIF文で比較したいと考えています。
データベースから取得したDataSetの値を確認したら「10.0」でDouble型でしたのでCSVの値(10)を
Double型に変換しないといけないのかと思って・・・
再度、アドバイスいただけませんでしょうか。
宜しくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
A B C D E の五文字のすべてを...
-
同一セル内に関数と文字列を同...
-
エクセルでアルファベットか数...
-
EXCELで=より左の文字を一括で...
-
文字列からタブコードを取り除...
-
エクセルマクロ 特定の文字列...
-
VBAを使って選択した範囲の数字...
-
Windowsでファイルのリネームで...
-
“丸(〇/○/◯)”に似た文字…
-
Left関数とRight関数を合わせた...
-
VBA2005 16進を2桁で表示したい。
-
エクセルで2.01E+04表示を201E2...
-
エクセルでセル内の文字列の最...
-
エクセルのLEFT関数をC言...
-
C言語→C#に変換
-
csvファイルを読み込んでデータ...
-
teratermマクロ 文字列分岐
-
C言語の勉強しています。すみま...
-
16進数を10進数に簡単に変換す...
-
UNIX:縦一列のファイルを横一行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでアルファベットか数...
-
EXCELで=より左の文字を一括で...
-
文字列からタブコードを取り除...
-
VBAでの Replace関数で、ワイル...
-
Excelで指数表現しないようにす...
-
Excelで3E8を3.00E+8にしない方...
-
エクセルで文字列をtxtファイル...
-
【Excel VBA】複数ある特定の文...
-
Left関数とRight関数を合わせた...
-
同一セル内に関数と文字列を同...
-
アクセスで特定の数字以外(複...
-
MS SQLServer のSQLで文字列の...
-
エクセルで文字列の最大値を抽...
-
VBA2005 16進を2桁で表示したい。
-
ORCLEでの小数の表示方法の変更...
-
エクセル 数値データを桁をそ...
-
VBの「As String * 128」とは?
-
CStringの文字列検索&抜き出し...
-
エクセルでセル内の文字列の最...
-
Msgboxの×が押されたとき
おすすめ情報