我有三张桌子,我需要单独金额.此外,我将使用select或where子句中的字段.
SELECT i.*, x.* FROM items AS i
LEFT JOIN
(
SELECT
p.item_id
,SUM(p.amount) AS saleAmount
,SUM(IF(p.type=1,pa.amount,0)) AS paidAmount
FROM payments AS p
LEFT JOIN payment_actions AS pa ON pa.payment_id=p.id
GROUP BY p.id
) AS x ON x.item_id=i.id
Run Code Online (Sandbox Code Playgroud)
物品表;
id
---
1
Run Code Online (Sandbox Code Playgroud)
付款表;
id | item_id | amount
---------------------------
1 | 1 | 300
Run Code Online (Sandbox Code Playgroud)
payment_actions表;
id | payment_id | amount
---------------------------
1 | 1 | 100
1 | 1 | 50
Run Code Online (Sandbox Code Playgroud)
结果应该是;
saleAmount | paidAmount
--------------------------
300 | 150
Run Code Online (Sandbox Code Playgroud) 我的网络服务器上有一个'cache'文件夹,其中存储.html文件,文件结构如下:
cache > user@gmail.com > several .html files.
Run Code Online (Sandbox Code Playgroud)
我需要一个PHP脚本,它将浏览用户文件夹中的所有子目录并删除超过3个月的文件.
到目前为止我有这个脚本:
$DIR = '/cache/';
if ($handle = opendir($DIR)) {
while (false !== ($file = readdir($handle))) {
if ( filemtime($DIR.$file) <= time()-60*60*24*120 ) { //120 days?
unlink($DIR.$file);
}
}
closedir($handle);
}
Run Code Online (Sandbox Code Playgroud)
但它不处理子目录.它也给了我错误,因为它试图取消联系导演..
更新:尝试添加计数功能:
<?php
rrmdir(/www/deletecontentsofthisfolder/);
echo $count . ' files deleted!';
function rrmdir($dir,$count=0)
{
if (is_dir($dir))
{
$objects = scandir($dir);
foreach ($objects as $object)
{
if ($object != "." && $object != "..")
{
if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object,$count);
if (filemtime($dir."/".$object) <= …Run Code Online (Sandbox Code Playgroud)