slack
とかを使っていると、新たに部屋に参加した人は挨拶するじゃないですか。「こんにちは!」って。そしたら、既に部屋にいる人は「こんにちはこんにちは!」って返しますよね。その後に入ってきた人は、これを見て「こんにちはこんにちはこんにちは!」って挨拶したり、次の人は「こんにちはこんにちはこんにちはこんにちは!」って書き込んだり、しますよね。
これを SQL でさくっと書けないか、と、とある チャンネルに @yoku0825
さんが書いた疑似SQLがこれ。
WITH RECURSIVE t AS (SELECT 1 AS c, 'こんにちは' AS str UNION ALL SELECT c + 1, CONCAT(str, str) FROM t WHERE c < ?) SELECT CONCAT(str, '!') FROM t;
…
[さらに読む]