【发布时间】:2017-09-07 08:20:44
【问题描述】:
当我尝试在 Yii2 查询中执行 mysql 函数时,我总是遇到语法错误。
我需要做的是选择第三列updated_at并做mysql函数,写在变量里
代码如下:
$contractExpiryDate = 'DATE_ADD(FROM_UNIXTIME(updated_at), '
. 'INTERVAL term_months MONTH) AS contract_expiry_date';
$query = self::find()
->select([
self::tableName() . '.*',
Client::tableName() . '.company_name AS company_name',
ClientService::tableName() . '.agreement_no AS agreement_no',
ClientService::tableName() . $contractExpiryDate,
])->joinWith('client')
->joinWith('loans')
->orderBy('company_name');
错误信息:
SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 ') AS contract_expiry_date FROM
client_profit_loss_reportLEFT JOINclientON' 附近使用正确的语法 正在执行的 SQL 是:SELECTclient_profit_loss_report.*,client.company_nameAScompany_name,client_service.agreement_noASagreement_no, client_serviceDATE_ADD(FROM_UNIXTIME(updated_at), INTERVAL term_months MONTH)来自client_profit_loss_report左加入client987654334client_id987654335 @client987654337client_profit_loss_report_loan987654339client_profit_loss_report_loan987654341client_service开client_profit_loss_report_loan.client_service_id=client_service.id订购company_name
谁能解释我做错了什么?
【问题讨论】:
-
有什么问题吗(显示或记录错误)?
-
我已经用错误更新了我的问题
-
@HELPME 我已经更新了我的答案。试试看。