SQL:循环遍历字典中的项目

SQL: Loop through items in dictionary

我创建了一个字典如下:

dict = { 'NASDAQ': {'AMZN%', 'AAPL%', 'ABNB%'}, 'TSX': {'SHOP%', 'L%', 'RY%', 'XIF%'}}

我想在查询中编写一个 for 循环,以从 table TICKER_TABLE 中获取数据,其中包含名为 TICKER 的列,其中包含 dict 值。

我正在编写的查询是更广泛的 Python 循环的一部分,如下所示:

for key in dict.keys():
    query = """SELECT * FROM "TICKER_TABLE"
               WHERE "TICKER" LIKE (FOR ITEM IN dict.VALUES)""""

有办法吗?

如果 TICKER_TABLE 和 TICKER 是可变的,在字符串和 {} 之前使用 f 来添加可变。我对 sql 不是很了解,所以我会在 python 中使用一个额外的 for 循环,虽然它可能做得更好,但我不知道你真正需要什么:

 for key in dict:
   for value in dict[key]:
     query = f"SELECT * FROM {TICKER_TABLE}
               WHERE {TICKER} LIKE {value}"

第二个 for 循环的每次迭代到 AMZN%、AAPL%、SHOP% 等

也许这方面的东西会对你有所帮助。