试着让下面的工作,试着为时区做调整。如果我注释掉行和plan.resethour=tzHour,它会正确显示列tzHour,但似乎不能使用where子句中的值。
SELECT
`issuer`.`tz`
,`account`.`id`
, `plan`.`endDate`
, `plan`.`resetDay`
, `plan`.`resetHour`
, `plan`.`type`
, HOUR(NOW())
, CASE issuer.`tz`
WHEN 'US/Eastern' THEN HOUR(NOW())+1
WHEN 'US/Central' THEN HOUR(NOW())
ELSE HOUR(NOW())
END AS tzHour
FROM
`dvh`.`account`
INNER JOIN `dvh`.`plan`
ON (`account`.`plan` = `plan`.`id`)
INNER JOIN `dvh`.`issuer`
ON (`plan`.`issuer` = `issuer`.`id`)
WHERE plan.type='UNIT'
AND plan.startDate < NOW()
AND plan.endDate >NOW()
AND plan.resetDay=DAYOFWEEK(NOW())
AND plan.resetHour=tzHour
AND account.`active`=1;
通过将大小写移到where子句来解决
AND plan.`resetHour` =
CASE
WHEN issuer.`tz`='US/Eastern' THEN HOUR(NOW())+1
WHEN issuer.`tz`='US/Central' THEN HOUR(NOW())
WHEN issuer.`tz`='US/Mountain' THEN HOUR(NOW())-1
WHEN issuer.`tz`='US/Pacific' THEN HOUR(NOW())-2
END
我试图在WHERE子句中将一个列从外部查询传递给内部查询,如下所示,MySQL不喜欢这样做。我不确定如何重写这个查询使其工作。 我很想知道如何让这个工作或重写它,使它将工作。我使用的是MySQL5.6,所以我没有可用的窗口函数,否则我认为可以工作。
为什么查询给出这个错误: #1054-“WHERE子句”中得列“NOPL”未知?
有人能修好它吗?
此函数有问题。它应该返回使用下面的sql调用收集的数据的json字符串。问题是,当通过服务器访问页面时(例如-localhost/app/API/states/Alabama/1/10.json),我得到一个错误代码“500”。奇怪的是,数据在使用.json和不使用appending.json的情况下按预期显示。据我所知,控制器和模型设置得很好,但错误代码仍然存在: {“code”:500,“ur
这是我的xml文件的一个片段:
基本上,我试图制作一个简单的促销页面,我得到的错误是SQL错误:1054,SQLSTATE:42S22错误是“字段列表”中的未知列“promotion0_.promot_type_id” 下面是模型类 以下是错误,SQL错误:1054,SQLSTATE:42S22,“字段列表”中的未知列“Promotion0_.Promot_Type_ID”错误34768---[nio-8080-exec-3]O