Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL查询,选择长文本数据类型之和,并将结果存储为变量_Php_Mysql_Casting_Sum_Longtext - Fatal编程技术网

Php MySQL查询,选择长文本数据类型之和,并将结果存储为变量

Php MySQL查询,选择长文本数据类型之和,并将结果存储为变量,php,mysql,casting,sum,longtext,Php,Mysql,Casting,Sum,Longtext,我需要从数据类型为“longtext”的表列中选择一些值,其中另一列具有特定值,并将这些值相加。我需要将总和存储为一个变量,我将a.)在网页上回显,b.)在页面后面的计算中使用该值 这可以找到我需要加起来的所有值: $query = "SELECT meta_value FROM wp_postmeta WHERE meta_key = '_crowdfundingtotalprice' ORDER BY CAST(`meta_value` AS UNSIGNED) DESC";

我需要从数据类型为“longtext”的表列中选择一些值,其中另一列具有特定值,并将这些值相加。我需要将总和存储为一个变量,我将a.)在网页上回显,b.)在页面后面的计算中使用该值

这可以找到我需要加起来的所有值:

 $query = "SELECT meta_value 
 FROM wp_postmeta 
 WHERE meta_key = '_crowdfundingtotalprice' 
 ORDER BY CAST(`meta_value` AS UNSIGNED) DESC";
我可以通过以下方式显示结果:

$result = mysql_query($query) or die(mysql_error());
while($row=mysql_fetch_array($result)){
echo $row['meta_value']. "<br>";
}
$result=mysql\u query($query)或die(mysql\u error());
while($row=mysql\u fetch\u数组($result)){
echo$row['meta_value']。“
”; }
从我的搜索中,我认为我已经接近我的查询,但是当我尝试回显结果时,我的页面无法加载。以下是不起作用的地方:

$query = "SELECT CAST(SUM('meta_value') as UNSIGNED) 
FROM wp_postmeta 
WHERE meta_key = '_crowdfundingtotalprice'";

$result = mysql_query($query) or die(mysql_error());
while($row=mysql_fetch_array($result)){
    echo $row[SUM('meta_value')]. "<br>";
}
$query=“选择强制转换(总和('meta_值')为无符号)
从wp_Posteta
其中meta_key=''u crowdfundingtotalprice';
$result=mysql\u query($query)或die(mysql\u error());
while($row=mysql\u fetch\u数组($result)){
echo$row[SUM('meta_value')。“
”; }
正如您可能已经猜到的,这是一个Wordpress数据库表,我无法更改数据类型。一如既往,感谢您的帮助

编辑-尝试下面Gordon Linoff的建议,我删除了meta_值周围的单引号。它仍然不起作用,但感谢您的建议:

$query = "SELECT CAST(SUM(meta_value) as UNSIGNED) 
FROM wp_postmeta 
WHERE meta_key = '_crowdfundingtotalprice'";

$result = mysql_query($query) or die(mysql_error());
while($row=mysql_fetch_array($result)){
    echo $row[SUM(meta_value)]. "<br>";
}
$query=“选择强制转换(总和(meta_值)为无符号)
从wp_Posteta
其中meta_key=''u crowdfundingtotalprice';
$result=mysql\u query($query)或die(mysql\u error());
while($row=mysql\u fetch\u数组($result)){
echo$行[总和(元值)]。“
”; }
已解决:

谢谢Gordon Linoff指出我的印刷错误。最后我制作了一个样品台,并自己敲定了它。事实上,我的查询中不需要单引号。然而,在我回应结果的地方,我需要单引号,但它们放错了地方。注意
$row['SUM(meta_值)'”
而不是
$row[SUM('meta_值')]

此外,我不需要使用CAST(这不起作用),因为如果查询使用math,MYSQL默认情况下会将值视为数学值

$query = "SELECT meta_key, SUM(meta_value) 
 FROM wp_postmeta 
 WHERE meta_key = '_crowdfundingtotalprice'";

$result = mysql_query($query) or die(mysql_error());
while($row=mysql_fetch_array($result)){
echo $row['SUM(meta_value)'] ."<br>";
}
$query=“选择元键,求和(元值)
从wp_Posteta
其中meta_key=''u crowdfundingtotalprice';
$result=mysql\u query($query)或die(mysql\u error());
while($row=mysql\u fetch\u数组($result)){
echo$row['SUM(meta_值)'。“
”; }
please,请停止在每个手册页上使用不推荐使用的
mysql
扩展:该扩展将在将来被删除,如果运行PHP5.5及更高版本,将发出
E_deprecated
通知。学会使用
PDO
mysqli*
来代替(顺便说一句,
i
代表改进),并学会爱statements@EliasVan Ootegem明白,但出于测试目的,我使用了down and dirty。非常感谢您对解决方案的帮助。您在
meta\u value
周围有单引号。你根本不需要任何报价。“我认为这是一个印刷错误,所以我决定将其关闭。@GordonLinoff谢谢你的建议。”。请看我上面的编辑。我删除了单引号,但这仍然不起作用。请你再提一个建议好吗?