Menu
Coddy logo textTech

The Modulo Operation

CoddyのSQLジャーニー「基礎」セクションの一部 — レッスン 25/72。

剰余演算子 % は、ある数値を別の数値で割ったときの余りを返します。

dividend % divisor
  • dividend: 割られる数(被除数)。
  • divisor: 割る数(除数)。

例えば

10 % 3

ここでは、10を3で割っています。3は10の中に3回入り、余りは1になります。したがって、resultは1になります。

通常、剰余演算(modulo)は数値が偶数か奇数かを確認するために使用されます:

  • 数値が偶数の場合、2で割ると余りは0になります。
  • 数値が奇数の場合、2で割ると余りは1になります。

例えば、偶数行を検索します:

SELECT * FROM table WHERE id % 2 = 0;

または、値を循環させる場合:

  • number % 12 (0-11を返します)
  • number % 8 (0-7を返します)

例えば、アイテムを5つずつのグループに分けます:

SELECT item_number % 5 as group_number FROM inventory;
challenge icon

チャレンジ

簡単

利用可能なテーブルとカラム:

  • <strong>products</strong>: <strong>id</strong>, <strong>price</strong>, quantity

以下のクエリを作成してください:

  1. 製品のIDを表示する
  2. 剰余演算子を使用して製品IDに基づき、各製品を3つの品質管理チーム(0、1、または2)のいずれかに割り当て、このカラムを quality_control と呼ぶ
  3. quantity カラムに奇数(例:1, 3, 5, 7...)が含まれる製品のみを含める

チートシート

剰余演算子 % は、除算の余りを返します:

dividend % divisor

一般的な用途:

  • 偶数/奇数のチェック: number % 2 = 0 (偶数) または number % 2 = 1 (奇数)
  • 値を循環させる: number % 12 は 0〜11 を返します
  • 項目をグループ化する: item_number % 5 は 0〜4 のグループを作成します

例:

-- 偶数番号の行を検索する
SELECT * FROM table WHERE id % 2 = 0;

-- 項目を5つのセットにグループ化する
SELECT item_number % 5 as group_number FROM inventory;

自分で試してみよう

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン