10

ほとんどのリレーショナルデータベースには、次のようなREPEAT()文字列関数があります。

SELECT REPEAT('abc', 3)

降伏します

abcabcabc

一方、SQLiteの機能セットは非常に限られています。SQLiteでサポートされている関数は次のとおりです。

http://www.sqlite.org/lang_corefunc.html

REPEAT()SQLiteで利用可能な関数でエミュレートできますか?

4

4 に答える 4

8

解決策は、関連する質問に対するこの回答に触発されました。

SQLiteでLPAD/RPADをエミュレートする方法

これは他のSQLiteユーザーに役立つ可能性があるため、StackOverflowで共有したいと思いました。解決策は次のようになります。

-- X = string
-- Y = number of repetitions

replace(substr(quote(zeroblob((Y + 1) / 2)), 3, Y), '0', X)
于 2012-07-19T20:10:43.103 に答える
5

繰り返したい単一の文字の場合は、printf関数を使用できます。

*以下は が繰り返される例10です。

sqlite> select printf('%.' || 10 ||'c', '*');
**********

複数の文字を繰り返すには、上記の Lukas の回答を参照してください。

于 2019-01-03T23:25:01.030 に答える