$sign (符号)

最終更新:2026-10-09

$sign (符号)

$sign は数値の符号を返します。正は 1、負は -1、0 は 0 です。カテゴリ集計、上昇・下降の方向判定、データのバケット化(価格変動を上昇・下降・横ばいにマッピングするなど)に使われます。null または欠落した引数は null を返し、NaN 入力は NaN を返します。$abs と組み合わせると値の方向と大きさの両方を得られ、条件式で比較をチェーンするより簡潔で、後段のグループ別集計にも便利です。

カテゴリ数学
MongoDB バージョン1.0+
例の言語mongosh(シェル)

📝 構文

{ $sign: <numeric-expression> }

⚙️ パラメータ

数値数値、または数値に解決される式。

戻り値:1、-1、または 0。入力が NaN の場合は NaN、null または欠落している場合は null

▶ 例

以下のコマンドをローカルの mongosh で実行してください(mongod が起動済みである必要があります):

// $sign: 価格変動の方向
db.stocks.aggregate([
  { $project: {
      trend: { $sign: '$change' }
  } }
])

出力:

{ '_id': 1, 'trend': 1 }
{ '_id': 2, 'trend': -1 }

📌 注意事項

さらなる実践ケースを近日公開予定。

📚 関連チュートリアル

❓ よくある質問

Q$sign はどの値を返しますか?
A3 種類です。正は 1、負は -1、0 は 0 です。
Q$sign は 0 に何を返しますか?
A0 を返します。符号付きの 0 もゼロとして扱われます。
Q$sign で上昇と下降を判定できますか?
Aはい。価格差を $sign に渡します。1 は上昇、-1 は下降、0 は横ばいです。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%