Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah saya boleh menghantar parameter kepada pertanyaan SQL menggunakan kaedah read_sql Pandas dengan SQLAlchemy?

Bagaimanakah saya boleh menghantar parameter kepada pertanyaan SQL menggunakan kaedah read_sql Pandas dengan SQLAlchemy?

DDD
DDDasal
2024-11-01 07:20:30507semak imbas

How can I pass parameters to an SQL query using Pandas' read_sql method with SQLAlchemy?

Parameter dalam Pertanyaan read_sql Pandas dengan SQLAlchemy

Apabila bekerja dengan enjin SQLAlchemy untuk menyambung ke pangkalan data, parameter boleh dihantar dalam Pertanyaan SQL menggunakan kaedah read_sql Pandas. Terdapat dua pendekatan utama untuk mencapai matlamat ini, seperti yang digariskan di bawah.

Menggunakan Senarai atau Tuple

Kaedah ini melibatkan mencipta senarai atau tupel yang mengandungi nilai yang akan diluluskan kepada pertanyaan. Pemegang tempat untuk nilai-nilai ini dalam pernyataan SQL hendaklah tanda tanya (?). Contohnya:

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

Menggunakan Kamus

Sebagai alternatif, kamus boleh digunakan untuk menghantar parameter dengan menyatakan nama parameter dan nilai sepadannya. Walau bagaimanapun, sintaks khusus yang digunakan untuk ruang letak parameter mungkin berbeza-beza bergantung pada pemacu pangkalan data. Dalam kes psycopg2, sintaks pilihan ialah menggunakan format %(name)s.

<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>

Adalah penting untuk ambil perhatian bahawa sintaks parameter yang disokong akan berbeza-beza berdasarkan pemacu pangkalan data yang digunakan. Oleh itu, adalah disyorkan untuk merujuk dokumentasi untuk pemandu khusus untuk memastikan penggunaan yang betul.

Atas ialah kandungan terperinci Bagaimanakah saya boleh menghantar parameter kepada pertanyaan SQL menggunakan kaedah read_sql Pandas dengan SQLAlchemy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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