No.5ベストアンサー
- 回答日時:
再び#1~4の者です。
先ほどの回答のエラーメッセージに間違いがありました。
【誤】
サーバー : メッセージ 409、レベル 16、状態 2、行 1
sum or average aggregate 演算は、void type データ型の引数を取りません。
サーバー : メッセージ 243、レベル 16、状態 1、行 1
型 bicint はシステム型として定義されていません。
【正】
サーバー : メッセージ 243、レベル 16、状態 1、行 1
型 bicint はシステム型として定義されていません。
です。
それはともかく、ふと思ったのですが、SQL-Serverのバージョンは何でしょうか?
bigint型は、確か、SQL-Server2000からサポートされたデータ型ですので、もしそれ以前のバージョンでしたらエラーになると思います。
もしそうだとしたら、numeric型に変換してみてはどうでしょうか?
バージョンなのですが、7.0を使っておりました。
ご指摘のとおり、numeric型に変換することにより出来ました。
本当にありがとう御座いました
No.4
- 回答日時:
やりたいことはわかりました。
SQL上で合計処理した方が効率的ですね。
おそらく、単純なタイプミスじゃないでしょうか?
select CONVERT(bigint, '1234567890123456')
は、正しく実行されます。
しかし、例えば、
select CONVERT(bicint, '1234567890123456')
というようにタイプミスした場合(「bigint」→「bicint」)、下記のようなエラーになります。
サーバー : メッセージ 409、レベル 16、状態 2、行 1
sum or average aggregate 演算は、void type データ型の引数を取りません。
サーバー : メッセージ 243、レベル 16、状態 1、行 1
型 bicint はシステム型として定義されていません。
もう一度よく確かめてみてください(できればクエリアナライザ上で試してみてください)。
ちなみに、下記のような構文(合計)でもOKです。
select SUM(CONVERT(bigint, '1234567890123456'))
select SUM(CONVERT(bigint, field)) from TABLENAME
mfuku様。
しかし、残念ながらbigintは使えませんでした。
(smallintは使えました。値が小さい時のみ)
といことなので、CCurを使いデータを引き出すループの中で
if IsNull(objRS("field").value) = False then
sum = sum + CCur(objRS("field").value)
end if
・
・
・
とすることにします。
少し重そうですが。。。
なぜbigintが使えないのかは不明なままですが、
本当にありがとう御座いました。
No.3
- 回答日時:
更なる質問の意味がいまいちわかりませんが、こんな解釈でよろしいでしょうか?
ASP上ではなく、SQL-ServerのSQLのレベルで文字型をbigint型の値に変換するSQL構文を知りたい。
そうだとすると、以下のような形になります。
CONVERT(bigint, field)
試しに以下のSQL文をクエリアナライザで実行してみてください。
select CONVERT(bigint, '1234567890123456')
数値型に変換されたかと思います。
この回答への補足
回答ありがとう御座います。
そして、質問の意味がわかりにくくてすみません。
結果としては
「型 bigint はシステム型として定義されていません。」
とエラーがでるのです。
もう一度やりたいことを書かせていただきます。
SQL-SERVER上でもasp上でもどちらでもいいのですが、
文字列のフィールドにある数値の値の合計を出したいのです。
そこで、まず私がやろうと思ったのは、
上記に書かれてますように
CONVERT(int, field) → 数値がある一定の値を超えるとオーバーフローする。
CONVERT(bigint, field) → 何故か上記のようなエラー
となってしまい出来ませんでした。
そして次に考えたのが一度asp側で値を受け取り、受け取った値を数値に変換して足そうと思ったのです。
これをやろうとすると恐らく重くなりそうな予感がするので、SQLのconvertのようなのを使って
select sum(convert(field))・・・とやりたいのですが、出来ないでしょうか?
bigintが使えないのは何故か分からないのですが、何か環境が悪いのでしょうか?
すみませんが、宜しくお願いします。
No.2
- 回答日時:
CCur(b) + CCur(d)
と、数値型(通貨型じゃなくてもOK)に型変換すれば大丈夫です。
この回答への補足
回答ありがとう御座います。
私が質問した内容はCCurで出来ました。
そこで、本当にやろうとしていることはDBの文字列のフィールドに数値が入っており、
dim sum
sum = 0
Do Until objRS.EOF
sum = sum + CCur(objRS("field").value)
・
・
・
として、文字列型のフィールドに入っている数値の合計を出したいのです。
SQLサーバーと連携しておりconvert(..)として、int形に変換すると
intの最大数を超える桁数の文字列がありそこでエラーがでます。
bigintなども使おうと思ったのですが、何故か使えません。
何か良い方法はあるでしょうか?
宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで文字列と数字が混在する列に書式設定したい。 3 2022/12/19 09:11
- Excel(エクセル) Excelの空文字判定について 7 2023/01/06 13:25
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- Visual Basic(VBA) VBA B列にある前から10文字のみ表示 3 2023/08/07 11:24
- Excel(エクセル) Excel 文字列を結合するときに重複をなくしたい 関数・VBA 2 2022/12/12 10:40
- Excel(エクセル) 【画像あり】A1が●+B1と同じ文字がB列にある+C1と同じ文字がC列にある場合D1に〇を付ける 3 2023/03/09 18:18
- Excel(エクセル) エクセルで2つの表を比較して、文字列が同じだが、その行のある値が違うものを抽出したい 1 2022/10/06 21:48
- Visual Basic(VBA) VBAで、特定の文字より後を削除して残った数値を文字列に変換と特定の文字より前も削除したい 3 2022/04/15 19:21
- Excel(エクセル) LEFT関数で文字数を指定しないで取りだす方法 7 2023/06/30 09:49
- Visual Basic(VBA) Excel VBAでAA(BBB) → BBB.AA に置換したい 2 2022/10/30 13:59
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語の型変換について
-
VB.NETで1→A、2→B、26→Z、27→AA...
-
対数変換のついて
-
WORD型をCString型に変換する方法
-
2進数から10進数へ変換
-
C#で文字列を数値に変換する方法
-
C++ 文字列変数と16進数の比較
-
16進コード文字列を文字列に変換
-
vb6の桁数指定
-
YUVYからRGBへ変換することにつ...
-
VBA 変数名に変数を使用したい。
-
コンボボックスのインデックス...
-
構造体配列の特定のメンバーをF...
-
VBとアクセスでSQL文に変...
-
【C#】textBoxの指定行のデータ...
-
RPG 配列宣言について
-
Access 追加クエリについて
-
access vba 『○○件づつ表示』を...
-
INT64対応のprintf系関数はあり...
-
【VB】コンボボックスにデータ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NETで1→A、2→B、26→Z、27→AA...
-
WORD型をCString型に変換する方法
-
16進をASCIIコードに変換する...
-
VB6.0の「vbFromUnicode」はVB....
-
C++ 文字列変数と16進数の比較
-
バイト型のデータをLong型に変換
-
16進コード文字列を文字列に変換
-
VC++ std::stringからLPCWSTRに...
-
10進数を2進数
-
2の補数の計算について
-
数字→漢数字変換
-
Boolean型変数の値を反転する方法
-
RGBとHSLを相互変換する際の端...
-
【C++/CLI】int型からString型...
-
textbox.textやlabel.captionの...
-
C#でListとDictionaryの判別方法
-
vb6の桁数指定
-
補数について教えてください!
-
C言語のGPS問題が分かりません。
-
Pythonの指数表記について
おすすめ情報