Supabaseでランダムなデータを取得する方法

ボタンを押した際にランダムな情報を取得したかったのですが、Supabaseでデータを取得する際に使用するselect()やfilter()ではランダムなデータを取得する術がありませんでした。では、どうすれば良いのか。

実現したいこと

Supabaseでランダムなデータを取得する。

課題

select()やfilter()関数にランダムなデータを取得する機能が存在しない。

対策

ランダムにデータを並び替えるVIEWデータベースを作成する。

方法

SQL Editorでランダムなデータを表示するVIEWデータベースを作成します。取得したデータベースをランダムに表示しているだけなので、元データを更新した際はその情報も反映されます。

CREATE VIEW new_table_name AS SELECT * FROM table_name ORDER BY random();
//ex
CREATE VIEW random_posts AS SELECT * FROM posts ORDER BY random();

まとめ

ググってもなかなか出ませんでしたが、Twitterで検索したところYouTubeの参考リンクを発見できました。技術系で検索しても出てこない情報がYouTubeとかで見つかること増えてるなと。

参考

⚡️4mins Supabase: Get a Random Row out of Supabase with Table Views

ー この記事をシェアする? ー

この記事にコメントする

このサイトはreCAPTCHAとGoogleによって保護されています。プライバシーポリシー利用規約が適用されます。