MySQL 第1引数と比較して最初の大きい値の位置を取得する

MySQL 第1引数と比較して最初の大きい値の位置を取得する

MySQLで、第1引数と比較して最初の大きい値の位置を取得する手順を記述してます。

環境

  • OS ubuntu21.10
  • MySQL Ver 8.0.27-0ubuntu0.21.10.1 for Linux on x86_64 ((Ubuntu))
  • MySQL Workbench 8.0.27

手順

第1引数と比較して最初の大きい値の位置を取得するには、「INTERVAL()」を使用します。

INTERVAL( 値,値,値... )

実際に、実行して確認してみます。

SELECT
INTERVAL( 5, 6, 1, 2 ,3, 7),
INTERVAL( 5, 1, 6, 2 ,3, 7),
INTERVAL( 5, 1, 2, 6 ,3, 7),
INTERVAL( 5, 1, 2, 3, 6, 7)

実行結果を確認すると、初めにみつかった位置が取得されていることが確認できます。

値がない場合

値がない場合は、最後の位置に「+1」した結果が返ります。

SELECT
INTERVAL( 5, 0, 1, 2 ,3),
INTERVAL( 5, 0, 1, 2 ,3, 4)

実行結果