Bagaimana untuk Lulus Parameter ke Pertanyaan SQL dalam Pandas\' read_sql()?

Mary-Kate Olsen
Lepaskan: 2024-10-30 01:49:29
asal
412 orang telah melayarinya

How to Pass Parameters to SQL Queries in Pandas' read_sql()?

Melalui Parameter dalam read_sql Pandas dengan SQL Query

Masalah:

Apabila bekerja dengan Kaedah read_sql() Pandas dan pertanyaan SQL, pengguna mungkin menghadapi kesukaran menghantar parameter kepada pertanyaan. Walaupun dokumentasi menyebut penggunaan parameter sebagai senarai atau tuple, sesetengah pengguna menemui masalah apabila cuba menggunakan format kamus.

Penyelesaian:

Mengikut read_sql () dokumentasi, parameter sememangnya boleh diluluskan sebagai kamus. Walau bagaimanapun, sintaks yang disokong oleh pemacu pangkalan data yang digunakan dalam sambungan memainkan peranan yang penting.

Untuk Psycopg2, pemacu pangkalan data yang biasa digunakan semasa menyambung ke PostgreSQL, sintaks argumen yang dinamakan disokong. Dalam kes ini, nama parameter hendaklah disertakan dalam tanda % berganda dan dinyatakan sebagai kamus, seperti yang ditunjukkan di bawah:

<code class="python">df = psql.read_sql(('select "Timestamp","Value" from "MyTable" '
                     'where "Timestamp" BETWEEN %(dstart)s AND %(dfinish)s'),
                   db,
                   params={"dstart": datetime(2014, 6, 24, 16, 0),
                           "dfinish": datetime(2014, 6, 24, 17, 0)},
                   index_col=['Timestamp'])</code>
Salin selepas log masuk

Dalam contoh ini, sintaks %()s digunakan untuk mentakrifkan ruang letak parameter dalam pertanyaan SQL. Nilai yang sepadan kemudiannya dihantar sebagai kamus kepada argumen params read_sql().

Dengan menggunakan sintaks yang betul untuk pemacu pangkalan data yang sedang digunakan, pengguna boleh berjaya menghantar parameter kepada pertanyaan SQL apabila menggunakan Pandas' read_sql( ) kaedah.

Atas ialah kandungan terperinci Bagaimana untuk Lulus Parameter ke Pertanyaan SQL dalam Pandas\' read_sql()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!