我知道这个问题已被问过几次,但我找不到答案。
我有一个带有'toronto'表的数据库,其中提到了所有的设施(例如餐厅),以及一些设施的名称(例如瑞士木屋)。我想用唯一的名称对所有餐馆进行分组,并按降序排列。但是,即使使用IS NOT NULL
和IFNULL
,我也无法删除NULL值。
我使用以下查询:
query = '''SELECT `name`, COUNT( `name`) AS Amen FROM `toronto` WHERE `name` IS NOT NULL and `amenity` like `restaurant` GROUP BY IFNULL(`name`,0) ORDER BY Amen DESC LIMIT 5;'''
cursor.execute (query)
我得到以下结果:
(('Swiss Chalet', 56), ('', 52), ('Sunset Grill', 30), ('Boston Pizza', 25), ("Wimpy's Diner", 17))
如何删除第二个结果,即'name'列中所有NULL值的组? TIA
ps:我正在使用pymysql查询数据库
答案 0 :(得分:1)
它不是null
值。这是一个空白值,因此您应该添加:
... WHERE `name` IS NOT NULL and name != ''...