sql - SQL 错误:“运算符不存在:字符变化 = bigint”
问题描述
我正在尝试检索有关歌手及其歌曲数量的 SQL 信息,仅选择至少有 2 首歌曲的歌手,并按组中的歌曲数量从最大的歌曲开始排序记录。我不断收到此错误:
运算符不存在:字符变化 = bigint
我的代码:
SELECT * FROM songs
WHERE title = (SELECT COUNT(title) FROM songs)
GROUP BY singer
HAVING COUNT(title) >=2
ORDER BY singer, title DESC;
有人可以帮忙吗?
解决方案
好吧,您将标题 (varchar) 与计数 (bigint) 进行比较,这是没有意义的。尝试这个:
SELECT * FROM songs
GROUP BY singer
HAVING COUNT(title) >= 2
ORDER BY singer, COUNT(title) DESC
推荐阅读
- rest - REST 完整 API 复合键与主键
- node.js - Heroku 上将 Angular 调用代理到后端 API 的正确方法是什么?
- java - 访问 H2 DB 时未找到表“myTable”错误
- c# - 为什么“decimal.TryParse()”在下面的代码中总是为输入字符串“-1”返回 0?
- javascript - 仅在单击文本框后才在网格中加载数据
- android - 我需要在带有动画的地图上显示带有 GroundOverlay 的世界地图
- react-native - 无法从 Object 获取数据
- python - 如何使用 JEP(Java Embedded Python)设置 Python 解释器?
- c# - 如何使用滚动视图位置设置淡入淡出功能
- python-3.x - 使用python的多个用户在服务器上访问谷歌日历