Chào mọi người ạ
Mình hỏng biết đăng bài viết ở đâu
Phải khởi tạo bài mới
hay vào bài viết góc lập trình đăng hỏi bài ạ
em tính hỏi cái này các anh giúp em với ạ
Em bí quá làm mãi mãi không ra mất gần cả tuần rồi huhu.. có ai giúp em ko ạ
có gì cho em số tài khoản em hậu tạ ít trăm hoặc số đt em gửi ít trăm thẻ nạp đt ạ
em không dám nhờ không không vì... công sức của mọi người suy nghĩ để phải cần có cơm có gạo nên em mới... xin số xin tài khoản để hậu tạ nếu em chạy đc code thành công ạ
----------------------------------------------
$myQuery = "SELECT
DATE_FORMAT( sales.date, '%e' ) AS date,
COALESCE(sum(sales.total), 0) as total,
COALESCE(sum(sales.total_tax), 0) as tax,
COALESCE(sum(sales.total_discount), 0) as discount
FROM (sales)
WHERE DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'
GROUP BY DATE_FORMAT( sales.date, '%e' )";
----------------------------
chỗ cái dòng
COALESCE(sum(sales.total), 0) as total,
ví zụ:
database Sales
date ...............| total | paid_by
-----------------------
2022-04-19 | 100k | AA
2022-04-19 | 20k | BB
2022-04-19 | 50k | CC
2022-04-19 | 80k | AA
2022-04-19 | 30k | CC
2022-04-19 | 40k | BB
2022-04-18 | 105k | AA
2022-04-18 | 25k | BB
2022-04-18 | 55k | CC
2022-04-18 | 85k | AA
2022-04-18 | 35k | CC
2022-04-18 | 45k | BB
2022-04-18 | 109k | AA
2022-04-18 | 29k | BB
2022-04-18 | 59k | CC
2022-04-18 | 89k | AA
2022-04-18 | 39k | CC
2022-04-18 | 49k | BB
Biết total là
total của ngày: 2022-04-19 có tổng là: 100+20+50+80+30+40 = 320k
total của ngày: 2022-04-18 có tổng là: 105+25+55+85+35+45 = 350k
total của ngày: 2022-04-17 có tổng là: 109+29+59+89+39+49 = 374k
làm sao
để Tính tổng số cùng ngày của:
* total của ngày: 2022-04-19 có tổng là: 100+20+50+80+30+40 = 320k
total loại AA của ngày: 2022-04-19 là 100k + 80k = 180k
total loại BB của ngày: 2022-04-19 là 20k + 40k = 60k
total loại CC của ngày: 2022-04-19 là 50k + 30k = 80k
*total của ngày: 2022-04-18 có tổng là: 105+25+55+85+35+45 = 350k
total loại AA của ngày: 2022-04-18 là 105k + 85k = 190k
total loại BB của ngày: 2022-04-18 là 25k + 45k = 70k
total loại CC của ngày: 2022-04-18 là 55k + 35k = 90k
*total của ngày: 2022-04-17 có tổng là: 109+29+59+89+39+49 = 374k
total loại AA của ngày: 2022-04-17 là 109k + 89k = 198k
total loại BB của ngày: 2022-04-17 là 29k + 49k = 78k
total loại CC của ngày: 2022-04-17 là 59k + 39k = 98k
ví zụ:
*trong cùng ngày thì
tổng AA riêng, Tổng BB riêng, Tổng CC riêng, Tổng Chung Riêng
*qua ngày khác thì
tổng AA riêng khác, Tổng BB riêng khác, Tổng CC riêng khác, Tổng Chung Riêng khác
*cho tới 30 ngày trong tháng
--> thì phải có 30 kết quả khác nhau
bạn nào nếu làm được thì lấy nguyên cái Đoạn mã của mình rồi bạn hãy Ghi lại rõ ràng chuẩn mực theo cách của các bạn... Mình copy vào mà chạy được thì mình sẽ rất Cảm ơn Hậu tạ bạn ạ
Chỉnh đoạn code sao vậy mọi người... Giúp giùm mình với ạ... Mình mò mờ mắt mãi ko ra
Ai giúp mình xong vui lòng để số đt lại mình bắn thẻ cao đt hoặc số tài khoản ạ... xin biết ơn và hậu tạ nếu chạy đc code ạ
Code ở dưới em gộp chung mà làm không được ạ. Nó chỉ ra đúng mỗi dòng Total, tax, discount-giảm thôi ạ
------------------
public function getDailySales($year, $month)
{
/*$myQuery = "SELECT DATE_FORMAT( date, '%e' ) AS date, SUM( COALESCE( total, 0 ) ) AS total
FROM sales
WHERE DATE_FORMAT( date, '%Y-%m' ) = '{$year}-{$month}' AND status != 'cancelled'
GROUP BY DATE_FORMAT( date, '%e' )";*/
$myQuery = "
SELECT
DATE_FORMAT( sales.date, '%e' ) AS date,
paid_by,
COALESCE(sum(sales.total_tax), 0) as tax,
COALESCE(sum(sales.total_discount), 0) as discount,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'AA' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'),0) as totalAA,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'BB' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalBB,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'CC' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalCC,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'DD' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalDD,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'EE' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalEE,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'FF' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalFF,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'GG' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalGG,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'HH' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalHH,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'ZZ' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalZZ,
COALESCE(sum(sales.total), 0) as total,
COALESCE(sum(sales.total), 0) as totalDo,
COALESCE(sum(sales.total), 0) as totalXanh
FROM (sales)
WHERE DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'
GROUP BY DATE_FORMAT( sales.date, '%e' )
";
$q = $this->db->query($myQuery, false);
if($q->num_rows() > 0) {
foreach (($q->result()) as $row) {
$data[] = $row;
}
return $data;
}
}
-------------------------------------------------------
chỗ
COALESCE(sum(sales.total), 0) as totalDo, -- em chưa có code được vì nó cộng trừ ở trên vẫn chưa làm được
COALESCE(sum(sales.total), 0) as totalXanh -- em chưa có code được vì nó cộng trừ ở trên vẫn chưa làm được
Ai có thể chỉnh thì inbox riêng em ... thỏa thuận rồi hẹn giờ vào trực tiếp máy em edit nếu muôn ạ... anh em muốn sao cũng đc ạ... vui thi cùng vui, làm đc thì em hậu tạ đôi chút theo ý của a e ạ...
Mình hỏng biết đăng bài viết ở đâu
Phải khởi tạo bài mới
hay vào bài viết góc lập trình đăng hỏi bài ạ
em tính hỏi cái này các anh giúp em với ạ
Em bí quá làm mãi mãi không ra mất gần cả tuần rồi huhu.. có ai giúp em ko ạ
có gì cho em số tài khoản em hậu tạ ít trăm hoặc số đt em gửi ít trăm thẻ nạp đt ạ
em không dám nhờ không không vì... công sức của mọi người suy nghĩ để phải cần có cơm có gạo nên em mới... xin số xin tài khoản để hậu tạ nếu em chạy đc code thành công ạ
----------------------------------------------
$myQuery = "SELECT
DATE_FORMAT( sales.date, '%e' ) AS date,
COALESCE(sum(sales.total), 0) as total,
COALESCE(sum(sales.total_tax), 0) as tax,
COALESCE(sum(sales.total_discount), 0) as discount
FROM (sales)
WHERE DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'
GROUP BY DATE_FORMAT( sales.date, '%e' )";
----------------------------
chỗ cái dòng
COALESCE(sum(sales.total), 0) as total,
ví zụ:
database Sales
date ...............| total | paid_by
-----------------------
2022-04-19 | 100k | AA
2022-04-19 | 20k | BB
2022-04-19 | 50k | CC
2022-04-19 | 80k | AA
2022-04-19 | 30k | CC
2022-04-19 | 40k | BB
2022-04-18 | 105k | AA
2022-04-18 | 25k | BB
2022-04-18 | 55k | CC
2022-04-18 | 85k | AA
2022-04-18 | 35k | CC
2022-04-18 | 45k | BB
2022-04-18 | 109k | AA
2022-04-18 | 29k | BB
2022-04-18 | 59k | CC
2022-04-18 | 89k | AA
2022-04-18 | 39k | CC
2022-04-18 | 49k | BB
Biết total là
total của ngày: 2022-04-19 có tổng là: 100+20+50+80+30+40 = 320k
total của ngày: 2022-04-18 có tổng là: 105+25+55+85+35+45 = 350k
total của ngày: 2022-04-17 có tổng là: 109+29+59+89+39+49 = 374k
làm sao
để Tính tổng số cùng ngày của:
* total của ngày: 2022-04-19 có tổng là: 100+20+50+80+30+40 = 320k
total loại AA của ngày: 2022-04-19 là 100k + 80k = 180k
total loại BB của ngày: 2022-04-19 là 20k + 40k = 60k
total loại CC của ngày: 2022-04-19 là 50k + 30k = 80k
*total của ngày: 2022-04-18 có tổng là: 105+25+55+85+35+45 = 350k
total loại AA của ngày: 2022-04-18 là 105k + 85k = 190k
total loại BB của ngày: 2022-04-18 là 25k + 45k = 70k
total loại CC của ngày: 2022-04-18 là 55k + 35k = 90k
*total của ngày: 2022-04-17 có tổng là: 109+29+59+89+39+49 = 374k
total loại AA của ngày: 2022-04-17 là 109k + 89k = 198k
total loại BB của ngày: 2022-04-17 là 29k + 49k = 78k
total loại CC của ngày: 2022-04-17 là 59k + 39k = 98k
ví zụ:
*trong cùng ngày thì
tổng AA riêng, Tổng BB riêng, Tổng CC riêng, Tổng Chung Riêng
*qua ngày khác thì
tổng AA riêng khác, Tổng BB riêng khác, Tổng CC riêng khác, Tổng Chung Riêng khác
*cho tới 30 ngày trong tháng
--> thì phải có 30 kết quả khác nhau
bạn nào nếu làm được thì lấy nguyên cái Đoạn mã của mình rồi bạn hãy Ghi lại rõ ràng chuẩn mực theo cách của các bạn... Mình copy vào mà chạy được thì mình sẽ rất Cảm ơn Hậu tạ bạn ạ
Chỉnh đoạn code sao vậy mọi người... Giúp giùm mình với ạ... Mình mò mờ mắt mãi ko ra
Ai giúp mình xong vui lòng để số đt lại mình bắn thẻ cao đt hoặc số tài khoản ạ... xin biết ơn và hậu tạ nếu chạy đc code ạ
Code ở dưới em gộp chung mà làm không được ạ. Nó chỉ ra đúng mỗi dòng Total, tax, discount-giảm thôi ạ
------------------
public function getDailySales($year, $month)
{
/*$myQuery = "SELECT DATE_FORMAT( date, '%e' ) AS date, SUM( COALESCE( total, 0 ) ) AS total
FROM sales
WHERE DATE_FORMAT( date, '%Y-%m' ) = '{$year}-{$month}' AND status != 'cancelled'
GROUP BY DATE_FORMAT( date, '%e' )";*/
$myQuery = "
SELECT
DATE_FORMAT( sales.date, '%e' ) AS date,
paid_by,
COALESCE(sum(sales.total_tax), 0) as tax,
COALESCE(sum(sales.total_discount), 0) as discount,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'AA' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'),0) as totalAA,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'BB' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalBB,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'CC' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalCC,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'DD' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalDD,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'EE' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalEE,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'FF' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalFF,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'GG' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalGG,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'HH' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalHH,
COALESCE((select COALESCE(sum(sales.total), 0) FROM sales WHERE paid_by = 'ZZ' AND DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'), 0) as totalZZ,
COALESCE(sum(sales.total), 0) as total,
COALESCE(sum(sales.total), 0) as totalDo,
COALESCE(sum(sales.total), 0) as totalXanh
FROM (sales)
WHERE DATE_FORMAT( sales.date, '%Y-%m' ) = '{$year}-{$month}'
GROUP BY DATE_FORMAT( sales.date, '%e' )
";
$q = $this->db->query($myQuery, false);
if($q->num_rows() > 0) {
foreach (($q->result()) as $row) {
$data[] = $row;
}
return $data;
}
}
-------------------------------------------------------
chỗ
COALESCE(sum(sales.total), 0) as totalDo, -- em chưa có code được vì nó cộng trừ ở trên vẫn chưa làm được
COALESCE(sum(sales.total), 0) as totalXanh -- em chưa có code được vì nó cộng trừ ở trên vẫn chưa làm được
Ai có thể chỉnh thì inbox riêng em ... thỏa thuận rồi hẹn giờ vào trực tiếp máy em edit nếu muôn ạ... anh em muốn sao cũng đc ạ... vui thi cùng vui, làm đc thì em hậu tạ đôi chút theo ý của a e ạ...
Sửa lần cuối: