問題タブ [bigint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
6664 参照

mysql - MySQLの非常に長い数値データ型

MySQLデータベースに「10196385171799537224」(21桁)のような数値(ID)を格納するには、どのデータ型を使用する必要がありますか?

0 投票する
1 に答える
273 参照

c# - BigIntクラスの開発

私はBigIntクラスの開発を始めましたが、今は行き詰まっています。問題は、長さが異なる2つの数値を加算しようとすると、結果が正しくないことです。たとえば、123 + 1は223を返します。問題がどこにあるかはわかっていますが、修正についてサポートが必要です。

この問題に関係なく、クラス設計のこのパターンは効果的ですか?この種のクラスを設計するためのより良いアイデアはありますか?

0 投票する
3 に答える
852 参照

scala - Scala でのパターン マッチング

誰かがここでパターンマッチの方法を説明してくれませんか?

0 投票する
1 に答える
2750 参照

assembly - 8086 で 2 つの 32 ビット数を乗算して 64 ビット数を取得します (32x32 => 64 ビットと 16 ビットの乗算)

アセンブリで 2 つの 32 ビット桁を乗算する方法、または 1 つの 32 ビットと別の 16 ビットを乗算するにはどうすればよいですか?アルゴリズムは誰でも知っていますか?

0 投票する
1 に答える
5084 参照

hibernate - Postgres - sum(bigint)をbigintに型キャストする方法は?

bigintデータ型として定義された列を持つ Postgres 8.2 テーブルがあります。

私が行うときsum(column)の戻り値の型はnumeric. bigint結果が の最大値を超えないことが確実にわかっているので、合計を強制的に型キャストしたいと思いますbigint。次のようなサブクエリを使用してこれを達成できました。

select T.big_col_total::bigint from (select sum(big_col) as big_col_total from big_table) T;

サブクエリを使用せずにこれを行う方法はありますか?つまり、sum何らかの形で直接型キャストできますか? いくつかの方法を試しましたが、どちらも構文エラーになります。

(背景: Hibernate からこのクエリを実行しているので、クエリからの戻りデータ型を BigInteger に限定することが重要です。bigint + bigint = numeric (Java 側の BigDecimal)

0 投票する
1 に答える
1969 参照

mysql - MySQLPACK_KEYSを理解するのに助けが必要

私はBIGINTを使用して、1から増加するID番号を保持しています。1つのテーブルでは、これが主キーになり、もちろん一意になります。他のテーブルでは、外部キーになります。PACK_KEYSを設定すると、先行ゼロがたくさんあるため、このキーが「パック」されるかどうかを調べようとしています。

テーブル作成のPACK_KEYSテーブルオプションのMySQLドキュメントを理解するのに苦労しています。ドキュメントからの関連する引用は次のとおりです。

2進数キーをパックする場合、MySQLはプレフィックス圧縮を使用します。

  • 前のキーの何バイトが次のキーと同じであるかを示すために、すべてのキーに1バイト余分に必要です。

  • 行へのポインタは、圧縮を改善するために、キーの直後に上位バイトから順に格納されます。

これは、2つの連続する行に多数の等しいキーがある場合、後続のすべての「同じ」キーは通常2バイト(行へのポインターを含む)しか使用しないことを意味します。これを、次のキーがstorage_size_for_key + pointer_size(ポインターサイズは通常4)を取る通常の場合と比較してください。逆に、同じ番号が多数ある場合にのみ、プレフィックス圧縮から大きなメリットが得られます。すべてのキーが完全に異なる場合、キーがNULL値を持つ可能性のあるキーでない場合は、キーごとに1バイト多く使用します。(この場合、パックされたキーの長さは、キーがNULLかどうかをマークするために使用されるのと同じバイトに格納されます。)

彼らは「 2つの連続した行に多くの等しいキーがあり、それに続くすべての「同じ」キーは通常2バイトしかかかりません(行へのポインタを含む) 」で私を失いました。私が達成しようとしていることに照らして、誰かが私のために上記のドキュメントを解釈できますか?たとえば、主キーの場合、「等しいキー」はありません。2つの連続する行、3つの連続する行、100の連続しない行、またはそれらが駆動しているものは何でもです。

ありがとう!

0 投票する
1 に答える
3428 参照

sql-server - 日付を SQL サーバーに BigInt として格納する - これは良い考えですか?

さて、例を挙げましょう

日にち :15.12.2012 00:16:39

これで、次のように保存されます。

たとえば、30分(30 * 60 = 1800秒)より古い行を取得したい場合

私はちょうどすることができます

これは、日時として保存するのではなく、パフォーマンスの方法でしょうか?

0 投票する
3 に答える
290 参照

php - MySQL で 100 兆を超える多数を PHP で更新するのは信頼できない

次のように PHP で MySQL に値を送信すると:

小さい数値では問題なく機能しますが、100 兆以上の数値では予期しない結果が生じます。数値を 100 ずつ更新することもあれば、まったく更新しないこともあります。

数が数十億を超えると、準備されたステートメントも異なりますが、信頼できない結果になります。

0 投票する
2 に答える
832 参照

sql-server - この種の日付文字列をSQLサーバーで大きな整数に変換するにはどうすればよいですか?

わかりました、これは私が日付を文字列として保持している愚かなことです

選択クエリで、それらを BigInt としてキャストして検索したい

以下のように

そのような文字列をSQLサーバーでBigIntにキャストするにはどうすればよいですか?

編集 - このクエリが機能しない理由

エラー: 列名 'myTime' が無効です。

0 投票する
1 に答える
620 参照

mysql - MYSQL turning INT field to BIGINT, without loss of data

I currently have a mysql table which is reaching the maxint mark with the autoincrement column.

Is it save to change the field type to Bigint without loss of data?

Or do I need to use a duplicate table with a bigint field, copy all data, and then remove the original and rename the copy to be sure I don't lose data?