Rumah > pangkalan data > tutorial mysql > Bagaimana untuk menyelesaikan ralat semasa menjalankan pernyataan mysql dalam python

Bagaimana untuk menyelesaikan ralat semasa menjalankan pernyataan mysql dalam python

王林
Lepaskan: 2023-05-29 13:34:06
ke hadapan
2115 orang telah melayarinya

1 python melaporkan ralat semasa menjalankan pernyataan mysql

Seperti yang kita sedia maklum, python mempunyai mekanisme terjemahan %s dan %d akan diterjemahkan ke dalam rentetan atau nombor, dan kabur pertanyaan sql juga perlu digunakan Oleh %, apabila semua pertanyaan kabur dilakukan, ia akan menjadi sangat memalukan jika keadaan pertanyaan menjadi pembolehubah.

Penyelesaian sebenarnya sangat mudah, cuma keluarkan rentetan yang perlu ditanya kabur dari sql dan sambungkannya bersama

Cara yang salah

<code>shopId = "zbw_010002"</code><code><br></code><code>'''select * from base_saleflows where shopId='{0}' and card_id is not NULL and standard_cls4 like "%湿巾%" '''.format(shopId)</code>
Salin selepas log masuk

Mendapati bahawa ada sesuatu yang tidak kena, mysql tidak boleh menjalankan pernyataan sedemikian.

Bagaimana untuk menyelesaikan ralat semasa menjalankan pernyataan mysql dalam python

rreee

Hasilnya ialah

<code>args='%湿巾%'</code><code>shopId = "zbw_010002"</code><code>mysql_sentence='''select a.shopId, a.sale_money,a.card_id ,a.standard_cls4 from base_saleflows a join  base_vips b on a.card_id = b.card_id where a.shopId='{0}' and a.card_id is not NULL and a.standard_cls4 like '{1}' '''.format(shopId,args)</code><code>print(mysql_sentence)</code><code><br></code>
Salin selepas log masuk

2 Pengumpulan rentetan dan penyambungan

Kumpulkan lajur cls3 mengikut aliran_no siri dan rentetan sambungan Simbol penyambungan ialah '-'

select * from base_saleflows a join  base_vips b on a.card_id = b.card_id where a.shopId='zbw_010002' and a.card_id is not NULL and a.standard_cls4 like '%湿巾%'
Salin selepas log masuk

Bagaimana untuk menyelesaikan ralat semasa menjalankan pernyataan mysql dalam python

Permohonan: Mengikut (tahun, suku, nombor cawangan, jenis kain lap basah) Kumpulan setiap suku Bilangan pelanggan baharu

Empat Diperoleh daripada cap masa tahun, bulan dan suku

#  分组拼接result = vipsaleflow_common.pivot_table(values='standard_cls3',index='flow_no',aggfunc=lambda x:x.str.cat(sep='-'))
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan ralat semasa menjalankan pernyataan mysql dalam python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan