連番ジェネレータ。
成果物
拡張関数のダウンロード&コンパイル
ダウンロード
このファイルをseries.c
ファイルとしてローカルに作成する。
コンパイル
gcc -g -fPIC -shared series.c -o series.so
拡張関数ライブラリ.so
ファイルが生成される。
使ってみる
ターミナルで以下コマンド実行。
sqlite3
対話モードで以下コマンド実行。
.load ./series.so
拡張関数generate_series
を使う。
SELECT value FROM generate_series(5,100,5);
5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100
連番(LIMIT
で上限指定)
SELECT * FROM generate_series LIMIT 5;
0 1 2 3 4
ランダム値を20個
SELECT random() FROM generate_series LIMIT 20;
4781183015573164509 -1186665590103292783 -5819188382597786527 4671825323400391928 -5796790998916529304 -5458092066215148353 9056443685724554304 -1499490289527021359 -7907301309464492982 8546936399769899891 8253122258267743397 1156079778985800018 388238426045630750 -5797378748399052240 -3491896033969870656 -6200741004921948958 -3008396113686618766 3404367843058498320 8409257409035081535 -1282497019177353122
0〜100のランダム値を取得する
SELECT (abs(random()) % 100) FROM generate_series LIMIT 20;
68 74 9 58 4
対象環境
- Raspbierry pi 3 Model B+
- Raspbian stretch 9.0 2018-11-13
- bash 4.4.12(1)-release
- SQLite 3.29.0
$ uname -a Linux raspberrypi 4.19.42-v7+ #1218 SMP Tue May 14 00:48:17 BST 2019 armv7l GNU/Linux
前回まで
- SQLite3学習をはじめよう
- SQLite3学習 SQLiteについて
- SQLite3学習 SQLiteの適切な用途
- SQLite3学習 SQLiteの特徴
- SQLite3学習 SQLiteのクセ
- SQLite3学習 データ型とアフィニティ
- SQLite3学習 演算子の一覧
- SQLite3学習 よくある質問
- SQLite3学習 SQLiteダウンロード&コンパイル
- SQLite3学習 Tclで操作する
- SQLite3学習 ビルドオプション動作確認(SQLITE_ALLOW_URI_AUTHORITY)
- SQLite3学習 面白そうなコンパイルオプション
- SQLite3学習 SQLiteの拡張について
- SQLite3学習 JSON拡張
- SQLite3学習 JSON拡張(json_extract)
- SQLite3学習 JSON拡張(json_each)
- SQLite3学習 JSON拡張(json_tree オブジェクト→行)
- SQLite3学習 JSON拡張(json_tree オブジェクトツリー→行)
- SQLite3学習 JSON拡張(json_tree オブジェクト配列→行)
- SQLite3学習 JSON拡張(json_group_array 行→配列)
- SQLite3学習 JSON拡張(json_group_object 行→オブジェクト)
- SQLite3学習 JSON拡張(json_array_length)
- SQLite3学習 JSON拡張(json_type)
- SQLite3学習 JSON拡張(json_valid)
- SQLite3学習 JSON拡張(json_quote)
- SQLite3学習 JSON拡張(json_array)
- SQLite3学習 JSON拡張(json_object)
- SQLite3学習 JSON拡張(json_patch)
- SQLite3学習 JSON拡張(json_insert)
- SQLite3学習 JSON拡張(json_replace)
- SQLite3学習 JSON拡張(json_set)
- SQLite3学習 JSON拡張(json_remove)
- SQLite3学習 全文検索(FTS5)
- SQLite3学習 全文検索FTSを日本語で使う方法を調べてみた
- 形態素解析MeCabをインストールする
- SQLite3学習 全文検索FTS5のMeCab用トークナイザを実装する
- SQLite3学習 FTS5+MeCabでクエリ構文
- SQLite3学習 FTS5のテーブル作成と初期化
- SQLite3学習 FTS5の補助関数
- SQLite3学習 FTS5のfts5vocab仮想テーブル
- SQLite3学習 再帰クエリ(WITH RECURSIVE)
- SQLite3学習 R-Treeモジュール
- SQLite3学習 ファイル入出力(SQL集計)