【问题标题】:SQL count - not workingSQL 计数 - 不起作用
【发布时间】:2011-12-12 00:28:18
【问题描述】:

我正在尝试这段代码:

SELECT COUNT (oferta_id_oferta) 
FROM `oferta_has_tags` 
WHERE oferta_id_oferta = 
(SELECT id_oferta FROM oferta 
WHERE oferta = "designer")

我收到error: 1630 - FUNCTION mydb.COUNT does not exist. Check the 'Function Name Parsing and Resolution' section in the Reference Manual

如果我删除 COUNT 字,我会得到两个结果。

有什么问题?

【问题讨论】:

    标签: mysql sql count


    【解决方案1】:

    不要加空格

    SELECT COUNT(oferta_id_oferta) 
    FROM `oferta_has_tags` 
    WHERE oferta_id_oferta = 
    (SELECT id_oferta FROM oferta 
    WHERE oferta = "designer")
    

    【讨论】:

    • 天哪,真烦人。
    • 不敢相信!
    • 这太疯狂了。现在是 2021 年,解析器无法处理?
    【解决方案2】:

    尝试删除 COUNT 和括号之间的空格:

    SELECT COUNT(oferta_id_oferta) 
    FROM `oferta_has_tags` 
    WHERE oferta_id_oferta = 
    (SELECT id_oferta FROM oferta 
    WHERE oferta = "designer")
    

    另外,你可以通过加入来摆脱你的子查询:

    SELECT COUNT(oferta_id_oferta) 
    FROM `oferta_has_tags`, `oferta`
    WHERE
        oferta_has_tags.oferta_id_oferta = oferta.id_oferta
        AND oferta.oferta = "designer"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-03
      • 1970-01-01
      • 2014-08-25
      • 2010-11-05
      相关资源
      最近更新 更多