Should `DELETE + LIMIT` be supported by the generic dialect ?
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
src/parser.rs の DELETE 文パース経路から始めて、delete のターゲットの後にある任意の LIMIT/OFFSET がどこで消費されるかを特定し、他の構文が MySqlDialect と GenericDialect のどちらで動作を制御しているかを確認してください(既存の方言チェックと Dialect 上のヘルパーメソッドを探す)。tests/ ディレクトリにテストを追加し(例: MySQL および汎用方言のテストファイル)、DELETE FROM t LIMIT 10 は MySQL ではパースされるが汎用方言では拒否されることを検証して、その後 cargo test を実行してください。完了の条件は、汎用方言が DELETE+LIMIT でエラーを出す一方で MySQL/MariaDB の動作が変わらないことです。
索引モデルが issue の本文から書いたものです。
説明
Hello!
At https://github.com/apache/datafusion/issues/24998 we were investigating a problem that DELETE FROM tableX LIMIT 10 was actually ignoring the limit and deleting all records.
It seems only MySQL/MariaDB supports LIMIT in DELETE clause. All other major DBs cannot parse it.
For example:
Postgres:
postgres=# DELETE FROM t3 LIMIT 2;
ERROR: syntax error at or near "LIMIT"
LINE 1: DELETE FROM t3 LIMIT 2;
^
DuckDB:
memory D DELETE FROM t3 LIMIT 2;
Parser Error:
syntax error at or near "LIMIT"
LINE 1: DELETE FROM t3 LIMIT 2;
^
Should sqlparser-rs disable DELETE+LIMIT for all but the MySQL dialect ?
- 主要言語
- Rust
- スター
- 3.5k
- フォーク
- 786
- 平均マージ
- 3日 15時間
- マージ済み PR(30日)
- 51
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
apache/datafusion-sqlparser-rs のほかの issue
-
ClickHouse
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
apache/datafusion-sqlparser-rs#2599 ·
メンテナーはふだん 1 日以内に返信
-
HIVE: Round trip fails for field access on a numeric-prefix identifier対応中かも @efegokdemir が 18 日前に担当しました。 オープンHive
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
apache/datafusion-sqlparser-rs#2589 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
apache/datafusion-sqlparser-rs#2461 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
PostgreSQL 18 generated virtual columns require STORED対応中かも @ting-hong-shieh が 58 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
apache/datafusion-sqlparser-rs#2407 ·
メンテナーはふだん 1 日以内に返信
-
Add SQL/PGQ keywords対応中かも @zhjwpku が 104 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
apache/datafusion-sqlparser-rs#2393 ·
メンテナーはふだん 1 日以内に返信
apache/datafusion-sqlparser-rs の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
loongarch64: `unsupported linker arg: --no-rosegment` with rustc 1.100対応中かも @monosans が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
rust-cross/cargo-zigbuild#503 ·
メンテナーはふだん 1 日以内に返信
-
bug good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
rust-lang/a-mir-formality#472 ·
メンテナーはふだん 1 日以内に返信
-
agent:iq3-xxs area: cli duplication enhancement priority: P3 ready-for-agent
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信