前提
Python、SQLiteともに初心者です。
PythonからSQLite3を用いてカラムと条件を指定して該当の値を取り出す処理を考えていますが、以下の2点でつまずいています。
➀カラム名が数字で始まるためPythonで記述する際にクオーテーションがうまく記述できない。
➁該当のレコードを2つの変数(カラム名と主キーの値)で指定する処理がうまくいかない。
➂取得した値をdecimal型の変数に格納する方法が分からない。
実現したいこと
【lengthの値がxでカラム名がyの値を取得(x,yは変数で指定)】
length | 1A | 1B |
---|---|---|
0.010 | 0.045 | 0.060 |
0.020 | 0.055 | 0.090 |
0.030 | 0.085 | 0.110 |
sample.db sampletable
該当のソースコード
Python
1import sqlite3 2 3x = 0.02 4y = "1A" 5 6conn = sqlite3.connect('sample.db') 7c = conn.cursor() 8c.execute('SELECT ? FROM sampletable WHERE length = ?',(y,x)) 9#ここから取得した値を変数に格納する方法もわかりません。 10conn.close()
試したこと
・SQLiteBrowserでxyに適当な値を入れたSQL文のみを実行した際にはうまくいきました。
・Pythonで上記のように記述しようとするとエラーが出たり、取得した値が"1A"になってしまいます。
補足情報(FW/ツールのバージョンなど)
・プログラミング初心者でどのような情報を記載すればいいか分からないので、必要な情報がありましたら教えていただければ幸いです。
・そもそもカラム名を変更するしかないなどの意見もありましたらご教示ください。
よろしくお願いいたします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/02/11 09:15