JSON array slicing
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 45/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- mysql, postgresql, sqlite, typescript
- 領域
- databases
調査の方向性
提案されている jsonbArraySlice エントリポイントから始め、その PostgreSQL JSONB クエリが開始位置、終了位置、順序付け、省略された境界をどのように処理するかを確認します。PostgreSQL、MySQL、SQLite に同等の JSON または配列スライスのパターンが存在するかを確認し、その後、サポートする動作を定義して、これらのデータベース全体で検証します。
索引モデルが issue の本文から書いたものです。
説明
In Postgres, JSON arrays do not support subscript slicing (e.g. array[2:]) syntax.
export function jsonbArraySlice<T>(
array: SQLExpression<T[]>,
start: SQLValue<number>,
end?: SQLValue<number>
) {
// Postgres array slicing is 1-based and inclusive of both start and
// end. If end is omitted, slice to the end of the array.
return sql<T[]>`
SELECT jsonb_agg(elem)
FROM (
SELECT elem
FROM jsonb_array_elements(${array})
WITH ORDINALITY arr(elem, ord)
WHERE ord >= ${start}
${end !== undefined ? sql`AND ord <= ${end}` : undefined}
ORDER BY ord
) sub
`
}
That's a JSONB implementation. Could use a JSON one too. Also need to see if MySQL and SQLite support a similar pattern.
- 主要言語
- TypeScript
- スター
- 175
- フォーク
- 8
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
alloc/drizzle-plus のほかの issue
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
alloc/drizzle-plus#24 · リアクション 1 件 ·
-
help wanted
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
alloc/drizzle-plus#8 ·
-
help wanted
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
alloc/drizzle-plus#5 ·
-
enhancement good first issue help wanted
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
alloc/drizzle-plus#4 ·
alloc/drizzle-plus の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
QuantumNous/new-api#7839 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
メンテナーはふだん 1 日以内に返信
-
bug p2 triaged
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
getpaseo/paseo#7071 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
test: make the #3408 Claude OAuth token fixture obviously fake so secret scanners stop flagging itオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
code-yeongyu/senpi#3436 ·
メンテナーはふだん 1 日以内に返信
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
難易度 1/5 1時間未満 初心者へのやさしさ 78/100
lingdojo/kana-dojo#32505 · コメント 1 件 · リアクション 5 件 ·
メンテナーはふだん 1 日以内に返信