我正在尝试检索有关歌手及其歌曲数量的 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
我收到此错误是因为我使用的是单引号,而不是双引号。错误的措辞具有误导性,但修复很简单。
SELECT * FROM app.user WHERE id = "abd-123";
^ 没有用。我需要:
SELECT * FROM app.user WHERE id = 'abd-123';
简单。