簡體   English   中英

如何匹配列中的值?

[英]How to match values in a column?

我有一個帶有列的文件temperature.txt

city 
avghigh 
avglow 
coldmonth 
coldavghigh
coldavglow
warmmonth 
warmavghigh
warmavglow 

我需要返回平均氣溫相同的城市的名稱。 我也有這個功能:

def run_query(db, q, args=None):
    conn = sqlite3.connect(db)
    cur = conn.cursor()
    if args is None:
        cur.execute(q)
    else:
        cur.execute(q, args)
    results = cur.fetchall()
    cur.close()
    conn.commit()
    conn.close()
    return results

到目前為止,我所得到的(如果正確的話)

return run_query(noname.db, ('Select Cities, AvgLow from Table')

在SQL中,可以使用表上的自我聯接輕松地完成此操作,以針對不同的城市獲得匹配的AvgLow,如下所示:

Select 
t.Cities, 
t.AvgLow         
from Table1 t
INNER JOIN Table1 t1 ON t.AvgLow = t1.AvgLow 
                    and t.Cities <> t1.Cities
ORDER BY t.AvgLow;

SQLite演示

暫無
暫無

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

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