在MySQL中拥有LENGTH(字段)

时间:2012-02-27 11:32:24

标签: mysql sql

我正在尝试选择字段为timestamp的行,其长度短于16个字符。我尝试了以下内容:

SELECT LENGTH(timestamp), id
FROM my_table
HAVING LENGTH(timestamp) < 16

但是我收到了这个错误:

  

#1054 - 'having clause'

中的未知列'timestamp'

有什么建议吗?

2 个答案:

答案 0 :(得分:8)

我想你想要:

SELECT LENGTH(`timestamp`), id
FROM my_table
WHERE LENGTH(`timestamp`) < 16

或者,如果你真的试图对结果进行分组......

SELECT LENGTH(`timestamp`)
FROM my_table
GROUP BY LENGTH(`timestamp`)
HAVING LENGTH(`timestamp`) < 16

注意每个示例中的反引号(`)以转义列名。

答案 1 :(得分:0)

我认为这将有效:

SELECT DISTINCT
    LENGTH(timestamp)
FROM my_table
WHERE LENGTH(timestamp) < 16