python 執行sql得到字典格式資料

2021-09-07 10:21:39 字數 1660 閱讀 2395

本文在提供一種方式,實現執行sql語句  返回字典結果集
#

conn = mysqldb.connect(host=settings.databases['

default

']['

host

'], user=settings.databases['

default

']['

user'],

passwd=settings.databases['

default

']['

password'],

db=settings.databases['

default

']['

name'])

cursor =conn.cursor()

#原生sql語句,注意要用六個 "

sql = """

select total_premium,quote_count,order_count from usr_statistics where day = 20170422

"""#

執行sql

cursor.execute(sql)

#只用於select語句,返回一行的列名

desc =cursor.description

print

"00000000000000000

"print

desc

#desc 將會輸出 (('total_premium', 246, 7, 26, 26, 2, 0), ('quote_count', 3, 3, 11, 11, 0, 0), ('order_count', 3, 3, 11, 11, 0, 0))

object_dict =[

dict(zip([col[0]

for col in

desc],row))

for row in

cursor.fetchall()

]cursor.close()

print

"1111111111111111111

"print

object_dict

#下面是object_dict的輸出,太長了,已經給其換行#[,

#,#,

#,#,

#,#,

#,#,

#,#,

#,#,

#,#]

object_list =

object_list_b =

for i in

object_dict:

"total_premium

")))

"quote_count"))

print

"22222222222222222222

"print

object_list

print

object_list_b

#object_list輸出 [200, 200, 999, 999, 888, 523, 211, 0, 213, 1232, 0, 0, 0, 0, 0]

#object_list_b輸出 [5l, 5l, 45l, 65l, 45l, 123l, 2l, 1l, 23l, 13l, 0l, 0l, 0l, 0l, 0l]

conn.close()

通過sql語句得到資料字典(zz)

select 表名 case when a.colorder 1 then d.name else end,字段序號 a.colorder,欄位名 a.name,標識 case when columnproperty a.id,a.name,isidentity 1 then else end,主鍵...

python執行 sql 語句

寫的很好 import pymysql conn pymysql.connect host 127.0.0.1 port 3306,user root passwd 123 db sqlexample 建立連線 連線資料庫 cursor conn.cursor 建立游標 cursor conn.cu...

sql得到時間

sql得到當前系統時間得 日期部分 convert varchar 10 getdate 120 昨天 select convert varchar 10 getdate 1,120 明天 select convert varchar 10 getdate 1,120 最近七天 select fro...