在mysql中选择一个不存在的列

6

例如,如果我想在MySQL表中选择一个不存在的列,我只想让这个列具有增量值,从“某个值(可以是100)”开始。我希望像这样实现:

my dummy column | other existing columns | blah
100
101
102

这在MySQL中是否可能?

这个https://dev59.com/9HA75IYBdhLWcg3wv73A 应该会对你有所帮助。 - Dalen
1个回答

13

当然可以,您可以使用as关键字为列命名。例如:

SELECT 1 as 'hello'

您可以像下面的示例一样简单地添加RowNumber列:
SELECT t.*, 
    @rownum := @rownum + 1 as RowNumber
FROM your_table t, 
     (SELECT @rownum := 0) r

从149开始,只需要用(SELECT @rownum := 149)替换(SELECT @rownum := 0)
对于具有特定类型的虚拟列,请使用CastConvert函数,如下所示:CAST(@rownum := @rownum + 1 AS CHAR) AS RowNumber。您可以在此处找到更多信息:http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html
更多与注释相关的示例:
SELECT
    COUNT(col1) AS col2
FROM your_table
GROUP BY col2
HAVING col2 = 2;

@nodsdorf在评论中的示例:

SELECT
    (1+1) AS dummy,
    other_column
FROM table

1
另一个例子: SELECT COUNT(col1) AS col2 FROM t GROUP BY col2 HAVING col2 = 2; - Mehdi Yeganeh
我希望它能够随着表中其他现有列的增加而增加,并且我希望它从149开始。 - Cadz
如果我只想选择一个虚拟列,但是我希望这个列具有特定的格式,比如说"longtext"类型,该怎么办? - Cadz
1
你可以使用CAST/CONVERT函数: 替换这个示例行:CAST(@rownum := @rownum + 1 AS CHAR) AS RowNumber 并查看此页面:http://dev.mysql.com/doc/refman/5.0/en/cast-functions.html - Mehdi Yeganeh
1
使用数学函数作为一个虚拟列.. 从表中选择 (1+1) 作为虚拟列, 其他列名为 other_column。 - nodsdorf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接