我的数据库中有一个时间戳,其值为:2011-10-05 16:06:48大于我已经定义的$start变量(2011-10-04 13:02:34),当我运行查询时,我收到一条错误消息.
function getgeneration() {
$period = '1 month';
$siteid = 1;
$start = '2011-10-04 13:02:34';
$value = $this->GetOffset();
$this->db->select("esolar + $value AS Esolar")
->from('calcdata')
->where('siteid', $siteid)
->where("time > $start");
$query = $this->db->get()->result_array();
$Esolar1 = $query[0]['Esolar'];
echo $Esolar1;
return $Esolar1;
}
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)A Database Error Occurred错误号码:1064
您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第4行'13:02:34'附近使用正确的语法
SELECT esolar + 3 AS Esolar FROM(calcdata)WHERE
siteid= 1 ANDtime> 2011-10-04 13:02:34文件名:/var/www/test/models/blog_model.php
行号:220
这是时间戳的常见问题吗?
我有以下sql语句:
$sql = "select siteid, row_number() OVER (ORDER BY siteid) as rownum FROM nwsite WHERE rownum >= 4";
Run Code Online (Sandbox Code Playgroud)
当我在查询之外使用名称时(例如在foreach循环中),"rownum"工作,但是当它用作WHERE子句时,它永远不会起作用.
有任何想法吗?
谢谢
我有以下查询:
$strQuery = "SELECT siteid, SUM(watts) AS wattage, unit, device, time FROM inverter WHERE siteid = '528' AND time Between '$time1' AND '$time2' Order By device Asc";
我在融合图表中制作图表并且需要每个设备的总瓦数,但是当我执行上面的查询时,它会获取所有值并将它们放置在第一个设备上.我有40个设备,需要每个设备产生总瓦数.
在图表上,我将设备显示为x轴名称标签,将瓦数显示为值.
谢谢
我在codeigniter格式中创建连接时遇到问题,我有一个返回我想要的MySQL查询:
SELECT nwsite.siteid, nwsite.installer_username,
calcdata.esolar, calcdata.time, calcdata.wsolar
FROM nwsite, calcdata
WHERE nwsite.siteid = calcdata.siteid AND time = '2011-10-29 12:45:00';
Run Code Online (Sandbox Code Playgroud)
我看过文档,但我一直都弄错了.
谢谢
php ×4
mysql ×3
sql ×3
codeigniter ×1
database ×1
fusioncharts ×1
sql-server ×1
sum ×1
timestamp ×1
where ×1