繁体   English   中英

在Concat mysql中选择

[英]Select in Concat mysql

我正在尝试通过以下方式获取日期值:-当前年份-当前月份-一次选择的天数

查询

SELECT rat_data FROM rate_unita WHERE rateid = 1 

结果是一个INT值。

当我尝试执行以下命令时:

SELECT DATE(CONCAT(YEAR(NOW())),(MONTH(NOW())), (SELECT rat_data FROM rate_unita WHERE rateid = 1))

Mysql将我的语法标记为在'(MONTH(NOW()))附近不正确,((在rate_unita中选择rat_data

我认为我在CONCAT中调用SELECT的方式出了问题,达到我的目标的正确查询是什么?

谢谢L

您太早关闭concat函数了。 删除一些多余的括号

SELECT DATE(CONCAT(YEAR(NOW()),
  MONTH(NOW()),
  (SELECT rat_data FROM rate_unita WHERE rateid = 1)
))

但是您需要添加一些连字符以使其成为真实的日期值

SELECT DATE(
  CONCAT(
    YEAR(NOW()),
    '-',
    MONTH(NOW()),
    '-',
    (SELECT rat_data FROM rate_unita WHERE rateid = 1)
  )
)

结果应为YEAR-MONTH-rat_data

这是一个有效的SQL小提琴

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM