Mysql 日期的Concat部分+;整数

Mysql 日期的Concat部分+;整数,mysql,concat,Mysql,Concat,我正在尝试生成一个由2个日期部分和一个整数(年、月和一个派生整数)组成的预订编号。下面是我正在尝试的内容,但CONCAT()给出了错误。我也尝试过CONCAT_WS()和CAST()但都没有成功。Txs SELECT date_format(CURRENT_DATE(), '%y%m') as my_date, a_res_number.res_number + 1 AS res, CONCAT(my_date, res) AS number FROM a_res_number;

我正在尝试生成一个由2个日期部分和一个整数(年、月和一个派生整数)组成的预订编号。下面是我正在尝试的内容,但
CONCAT()
给出了错误。我也尝试过
CONCAT_WS()
CAST()
但都没有成功。Txs

SELECT date_format(CURRENT_DATE(), '%y%m') as my_date,
    a_res_number.res_number + 1 AS res,
    CONCAT(my_date, res) AS number
FROM a_res_number;

UPDATE a_res_number SET a_res_number.res_number = a_res_number.res_number + 1;

在调用
CONCAT()
时不能使用别名

或者,如果您需要这些值作为最终结果的一部分:

SELECT
    DATE_FORMAT(CURRENT_DATE(), '%y%m') AS my_date,
    a_res_number.res_number + 1 AS res,
    CONCAT(DATE_FORMAT(CURRENT_DATE(), '%y%m'), a_res_number.res_number + 1) AS number
FROM a_res_number;

在调用
CONCAT()
时不能使用别名

或者,如果您需要这些值作为最终结果的一部分:

SELECT
    DATE_FORMAT(CURRENT_DATE(), '%y%m') AS my_date,
    a_res_number.res_number + 1 AS res,
    CONCAT(DATE_FORMAT(CURRENT_DATE(), '%y%m'), a_res_number.res_number + 1) AS number
FROM a_res_number;
还可以使用格式(无需重复函数调用):

还可以使用格式(无需重复函数调用):


很可能您必须将日期格式转换为字符串。对于将来来说,说“concat()给出错误”是没有帮助的。如果您遇到错误,并且希望得到帮助,您必须告诉我们错误!ok txs对于您的建议,我很可能您必须将
日期格式转换为字符串。对于将来,说“concat()给出错误”是没有帮助的。如果您遇到错误,并且希望得到帮助,您必须告诉我们错误!好的txs谢谢你的建议我会的
SELECT my_date, res, CONCAT(my_date, res) AS number
FROM (
  SELECT
    DATE_FORMAT(CURRENT_DATE(), '%y%m') AS my_date,
    a_res_number.res_number + 1 AS res
  FROM a_res_number
) as q;