Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menggunakan Parameter dengan Pertanyaan SQL dalam Pandas?

Bagaimanakah Saya Boleh Menggunakan Parameter dengan Pertanyaan SQL dalam Pandas?

Barbara Streisand
Barbara Streisandasal
2025-01-18 07:16:10464semak imbas

How Can I Use Parameters with SQL Queries in Pandas?

Menggunakan parameter pertanyaan SQL dalam Panda

Panda membenarkan menghantar parameter apabila melaksanakan pertanyaan SQL, menggunakan fungsi read_sql().

Sintaks lulus parameter

Parameter boleh dihantar sebagai senarai, tuple atau kamus. Walau bagaimanapun, sintaks yang disokong bergantung pada pemacu pangkalan data yang digunakan.

Senaraikan atau parameter tuple

Kaedah ini melibatkan penggunaan %s pemegang tempat atau tanda soal ? dalam pertanyaan SQL. Parameter dihantar sebagai senarai atau tupel, dalam susunan yang sama seperti yang muncul dalam pertanyaan.

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

Parameter kamus

Apabila menggunakan parameter kamus, pasangan nilai kunci dalam kamus sepadan dengan nama parameter dalam pertanyaan SQL. Nama parameter dalam pertanyaan harus menggunakan sintaks %(name)s.

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

Sintaks yang dicadangkan

Sintaks yang disyorkan untuk menghantar parameter menggunakan pertanyaan SQL dalam Pandas ialah menggunakan parameter bernama (dikt) atau parameter kedudukan (senarai atau tuple), bergantung pada sintaks yang disokong oleh pemacu pangkalan data.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Parameter dengan Pertanyaan SQL dalam Pandas?. 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