queryverse / queryverse/QuerySQLite.jl
error using the in operator
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Julia
- Sterne
- 4
- Forks
- 2
- Ø Merge
- 2 T. 3 Std.
- Gemergte PRs (30 T.)
- 1
Beschreibung
I was trying to do a filter for a value in an array. Here's an example using the Chinook db:
using Query, QuerySQLite
database = Database(joinpath(pathof(QuerySQLite) |> dirname |> dirname, "test", "Chinook_Sqlite.sqlite"))
database.Track |> @filter(_.AlbumId in [1,5,9])
which returns the error:
SQLite.SQLiteException("no such table: 1, 5, 9")
and piping to get_sql has [ ] around the array, where SQL needs parens ( ).
If we run:
using SQLite, DataFrames
result = DBInterface.execute(db,"SELECT * FROM (Track) WHERE AlbumId IN (1, 5, 9)") |> DataFrame
we get the expected results.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Reproduziere das Chinook-Beispiel aus dem Issue und untersuche das von get_sql erzeugte SQL für das Array, das mit dem in-Operator verwendet wird. Vergleiche es mit der funktionierenden DBInterface-Abfrage; abgeschlossen ist die Aufgabe, wenn der Filter gültige SQLite-IN-Syntax mit Klammern ausgibt und die erwarteten Zeilen zurückgibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- julia, sqlite
- Bereich
- databases
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100