我正在尝试使用PDO运行SQL查询
这有效
.octagonWrap {
background: red;
width: 200px;
height: 200px;
position: absolute;
-webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
}
.octagon {
position: relative;
background: gray;
width: 190px;
height: 190px;
top: 5px;
left: 5px;
-webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
}
但这不是
<div class="octagonWrap">
<div class='octagon'></div>
</div>
唯一的区别是在查询中添加了a,b列名。
我可以将查询(两者)直接运行到mysql中,并按预期方式获得一条记录,但是PDO似乎不喜欢同一查询中的列名和总和?
我看不到原因或解决方案。 PDO的新手,所以以前从来都不是我的问题。
谢谢。
更新-好的,我仍然认为这应该可以正常工作,但是作为一种解决方法,我运行了2条sql语句,几乎完全相同。一个带有SELECT SUM(x),一个带有SELECT a,b,但没有和。效果很好,但是我真的应该能够在一个声明中做到这一点,除非我遇到了我尚不了解的PDO限制。
答案 0 :(得分:0)
您可能需要GROUP BY c
(或您可能希望对域聚合函数SUM()
进行分组的任何列)才能获得所需的结果集...并可能将上述建议纳入帐户。
答案 1 :(得分:0)
以这种方式针对您的查询进行尝试,为我实现了您想要的目标:
$ result = $ dbo-> query(“ SELECT a,b,(SELECT sum(c)asFROM tbl), 作为scfus 来自tbl 哪里 YEAR(ondate)= YEAR('“。$ _ POST ['startdate']。”') AND MONTH(ondate)= MONTH('“。$ _ POST ['startdate']。”') AND DAY(ondate)= $ i“);
SUM仅返回一行,因此您将永远不会获得所有结果,而只会获得第一个匹配的WHERE标准(它首先找到找到的记录,然后仅计算需要的条件)。
它将起作用
哦,顺便说一句,为日期打上时间戳记,以日期sql格式创建日期发布的字符串,然后检查
WHERE date = $_POST['date']
答案 2 :(得分:0)
将起作用 SELECT a,b,(SELECT SUM(ID)* 30 FROM表)FROM表WHERE ID = SOME(SELECT ID FROM表WHERE users_ID = idYouWant);