我应该同时根据两个WHERE子句进行搜索。一个是一个简单的子句,另一个是MAX (文本)。怎么解决?
x = cursor.execute('SELECT product FROM electronics WHERE brand = ? AND MAX(price)' [combo_brand])Price是数据库的一列。我想取列记录的最高值。我想选择的产品与最高的价格,并通过它和品牌搜索在同一时间。
我得到了这个错误:
TypeError: string indices must be integers发布于 2021-12-20 04:15:23
如果要选择某一品牌的最高价格的产品,请使用:
sql = '''SELECT product
FROM electronics
WHERE brand = ? AND price = (SELECT MAX(e.price)
FROM electronics e
WHERE e.brand = electronics.brand)'''
x = cursor.execute(sql, (combo_brand,))
records = cursor.fetchall()
print("Total rows are: ", len(records))
for row in records:
print(row)如果您想要的是所有品牌的最高价格的产品,那么请使用:
sql = '''SELECT product
FROM electronics
WHERE brand = ? AND price = (SELECT MAX(price) FROM electronics)'''
x = cursor.execute(sql, (combo_brand,))但我怀疑第一个版本是你想要的。
https://stackoverflow.com/questions/70417296
复制相似问题