我试图计算两个子查询之间的百分比,我有一个解决方案对我来说似乎并不优雅:
$bookstore = $doc->createElement('Bookstore');
$book = $doc->createElement("Book");
/* your code */
/* append name and url to $book */
$book->appendChild($textareaNode);
$book->appendChild($textareaNode1);
$bookstore->appendChild($book);
$doc->appendChild($bookstore);
$doc->save("d.xml");
虽然这可以在命令行中运行,但它在一个定制的平台上失败了我试图创建一个报告,我想知道是否有一种方法可以在不使用set变量的情况下简化此操作?
提前致谢。
答案 0 :(得分:2)
我没有看到任何理由你不能简单地将它作为嵌套子查询中的SELECT来实现。 (在MySQL中未经测试,但在SQL Server中使用正确的日期函数。)
select total, dispatched / total * 100 as percentage from
(
select count(*) as Total,
sum(case when state = 'despatched' then 1.0 else 0.0 end) as dispatched
from
shipment
where
created >= date_format(CURRENT_TIMESTAMP(), '%Y%m%d000000')
and
created < date_format(date_add(CURRENT_TIMESTAMP(), interval 1 day), '%Y%m%d000000')
) calcs