問題タブ [sql-parser]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
780 参照

java - 方解石で sqlNode をトラバースする方法

すべてのテーブル名と列名を、文字列の形式になる SQL クエリで別の名前に変換する必要があり、Calcite SQL パーサーを使用してそれを行う必要があります。ビジター インターフェイスを実装する必要があることだけは知っていますが、その方法はわかりません。私を助けて、それを行う方法に関する基本的な情報を教えてください。

このような基本的な質問をして申し訳ありませんが、Calcite sqlparser のドキュメントを調べたところ、何をすべきかわかりませんでした。また、最小限のチュートリアルもあります。

0 投票する
2 に答える
1836 参照

python - 列名とデータ型を取得する python SQL パーサー

テーブル情報を取得するためにPython SQLパーサーを使用しています。テーブル名とスキーマ名を取得できました。

しかし、列名とトークンのデータ型を返したい場合は、2 つの DDL の両方を印刷するために使用できます。

出力は次のようになります[まったく同じではありません:)]

列名とデータ型を1つずつ出力します(おそらくforループ内)

0 投票する
1 に答える
324 参照

presto - Facebook Presto SQL パーサーを使用して SQL ステートメントを生成する

Presto Parser を使用して SQL ステートメントを生成するのに苦労しています。ユースケースの詳細は次のとおりです-

  1. 外部フロントエンド UI (nodejs アプリ) を使用して生成された既存の SQL ステートメントを解析します。
  2. 新しい列と where 句の条件を追加します。
  3. SQL ステートメントを再生成します。これらの SQL は Hive/Spark で実行されます。

これまでのところ、 Facebook Presto パーサーを使用してステップ 1 と 2 で成功しましたが、SQL を生成する方法を理解できませんでしたか?

他のライブラリを使用して SQL を生成しますか? ここでの提案をいただければ幸いです。