簡體   English   中英

熊貓 將列名稱設置為參數

[英]Pandas. Set a column name as parameter

我正在與熊貓一起工作,我想將查詢的列設置為參數。 我嘗試這樣:

res_estacion_b = pd.read_sql("SELECT date, :column FROM table_1 WHERE date BETWEEN 
    TO_DATE(:date_ini, 'DD/MM/YYYY HH24:MI:SS') AND 
    TO_DATE(:date_end, 'DD/MM/YYYY HH24:MI:SS')",
    con=db, params={'date_ini': inicio, 'date_end': fin, 'column': condition.name})

The result is:

     date               :COLUMN
0  2009-01-01 00:00:00  PARK_DEF
1  2009-01-01 00:10:00  PARK_DEF
2  2009-01-01 00:20:00  PARK_DEF
3  2009-01-01 00:30:00  PARK_DEF
4  2009-01-01 00:40:00  PARK_DEF
5  2009-01-01 00:50:00  PARK_DEF

我沒有獲取列值,而是獲取列名。 是否可以獲取值?

只需預先將字符串中的列名稱替換為:

str = "SELECT date, {column} FROM table_1 WHERE date BETWEEN 
    TO_DATE(:date_ini, 'DD/MM/YYYY HH24:MI:SS') AND 
    TO_DATE(:date_end, 'DD/MM/YYYY HH24:MI:SS')".format(column=condition.name)
res_estacion_b = pd.read_sql(str, con=db, params={'date_ini': inicio, 'date_end': fin})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM