apache / apache/datafusion-sqlparser-rs
Support for spark `USING` and `OPTIONS` keyword
- Langage dominant
- Rust
- Étoiles
- 3.5k
- Forks
- 772
- Merge moyen
- 4 j 9 h
- PR mergées (30 j)
- 17
Description
Hi,
I was trying to extract options from a create table query, but it seems like this syntax from spark is not supported:
```sql
CREATE TABLE chin_dbo_Track_LIMIT USING org.apache.spark.sql.jdbc OPTIONS (url "jdbc:sqlserver://localhost:1433;database=Chinook;user=sa;password=mypassword",dbtable "(SELECT TOP 100
[E12].[TrackId] [TrackId]
,[E12].[Name] [Name]
,[E12].[AlbumId] [AlbumId]
,[E12].[MediaTypeId] [MediaTypeId]
,[E12].[GenreId] [GenreId]
,[E12].[Composer] [Composer]
,[E12].[Milliseconds] [Milliseconds]
,[E12].[Bytes] [Bytes]
,[E12].[UnitPrice] [UnitPrice]
FROM
[Chinook].[dbo].[Track] [E12]) obj",driver "com.microsoft.sqlserver.jdbc.SQLServerDriver")
```
Parse error:
```
ParserError("Expected: end of statement, found: USING at Line: 2, Column: 43")
```
This also does not work if I remove the using JDBC part, then it does not expect `OPTIONS`
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Reproduisez l’erreur du parser signalée avec l’instruction Spark CREATE TABLE fournie, puis suivez le point d’entrée de l’analyse de CREATE TABLE et les tests existants pour les options de table. Le travail est terminé lorsque la syntaxe USING et OPTIONS prise en charge est analysée correctement et que la couverture de non-régression vérifie l’exemple sans casser les instructions CREATE TABLE existantes.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- rust, sql
- Domaine
- databases
- Type d'issue
- Fonctionnalité
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100