javascript - 按日期对两个表进行排序并在 html <table> 中显示输出

标签 javascript php html mysql date

我已经准备好一个 PHP 代码,它将从 mysql 数据库中获取数据,该 PHP 代码还将以表格形式显示数据。

我想要实现的目标:

我有一个名为“stackoverflow”的虚拟数据库,其中有两个表“customer”和“receipt” 这两个表都有一个名为“date”的字段,其数据类型也为日期。 full schema here

我希望从这些表中选择一些条目出现在 html 表中。 条目应按日期升序排列。

我尝试过并取得的成就:

数据已成功获取并以表格形式显示,但日期排序尚未完成。

output of my result (without php code since jsfiddle doesn't support php)

我使用 PHP 比较每个表的日期之间的日期,然后显示相应的数据

<?php
        while( $kb = mysql_fetch_assoc($customer) ){
            customer_data($kb); //function which echos <tr>'s of customer table
                while($cd = mysql_fetch_assoc($reciept)){ //function which echos <tr>'s of reciept table
                    if($cd['date'] <= $kb['date']){
                    reciept_data($cd);
                    break;
                }
            }
        }
?>

我面临的问题:

排序与我想要的不完全一样。 (只有其中一些是按照日期递增的顺序)。

链接到我的整个项目文件,其中包含数据库架构和示例数据(只需导入到 phpmyadmin)以供引用:http://www.mediafire.com/?bcbvkn8uq89ya6n

如果您仍然对我想要获得什么样的输出感到困惑。我在 Excel 中制作了一个表格,这是图像:image

几天来我一直在努力解决这个问题。我想这是因为我缺乏sql技能?任何帮助将不胜感激。

谢谢!

更新:

这是我使用 php 从表中获取数据的方法:

$customer = mysql_query("SELECT * FROM customer WHERE customer_name = '$name' ORDER BY date ASC ");

$reciept = mysql_query("SELECT * FROM reciept WHERE name = '$name' ORDER BY date ASC");

经过一番研究,我发现了 UNION 运算符,它连接两个 select 语句,并开发了这个查询:

SELECT DATE, customer_name, grand_total
FROM customer
WHERE customer_name =  'JHON'
UNION ALL 
SELECT DATE, name, recd_amount
FROM reciept
WHERE name =  'JHON'

但我只能选择相等的否。两个 select 语句中的列数,以及如何按日期排序?

最佳答案

在 if 语句中应该使用“==”进行相等比较。 '=' 将为变量赋值

   if($cd['date'] = $kb['date']){ 

   if($cd['date'] == $kb['date']){

联合排序

 $query = " (SELECT DATE, customer_name, grand_total
FROM customer
WHERE customer_name =  'JHON')
UNION ALL 
    (SELECT DATE, name, recd_amount
     FROM reciept
     WHERE name =  'JHON')
    order by  customer.Date desc"

帮助链接 MYSQL UNION ORDER BY

关于javascript - 按日期对两个表进行排序并在 html <table> 中显示输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19705560/

相关文章:

javascript - 如何使用 jQuery 或 JavaScript 替换两个 XML 标签之间的文本?

java - 使用java解压二进制php packed float

c# - Unity WWW 请求我可以使用多个吗?

javascript - Uncaught ReferenceError : Firebase is not defined when using with phonegap

php - php 中一段时间​​的多个 onchange 提交不起作用

javascript - 是否有 es-lint 或类似的规则来禁用 `extends`

javascript - 如何定位 VuetifyJS 弹出组件?

javascript - 对象数组上的长度属性未更新

php - 没有得到显示昨天日期的正确日期

javascript - 使用 CSS 列在 epub 上工作,关于分页