我需要一个 mysql 查询来执行此操作 但我想不出什么办法可以让这一切发生
我们有一个 Excel 文件,其中包含超过 5,000 行 有些是空白的,有些是有值(value)的,我手动做的是 将顶部值复制到其下面的空白字段等 所以我想到了一种可以将excel导入myslq数据库的方法 并进行一些查询以节省这样做的精力和时间..
这是我的表格:
只有“付款日期”列对整个行都有值,但有些具有值,而其他列则没有看到此示例,但原始文件超过 5,000 行
|Name | age | Salary| Date_paid |
-----------------------------------
bbjake| 16 | 200 | 03/25/2015 |
----------------------------------|
| | | 04/25/2015 |
----------------------------------
| | | 05/25/2015 |
-----------------------------------
kentot| 20 | 300 | 03/25/2015 |
-----------------------------------
| | | 04/25/2015 |
----------------------------------|
| | | 05/25/2015 |
-----------------------------------
运行查询后,这是我想要的结果
|Name | age | Salary| Date_paid |
----------------------------------|
bbjake| 16 | 200 | 03/25/2015 |
-----------------------------------
bbjake| 16 | 200 | 04/25/2015 |
-----------------------------------
bbjake| 16 | 200 | 05/25/2015 |
-----------------------------------
kentot| 20 | 300 | 03/25/2015 |
-----------------------------------
kentot| 20 | 300 | 04/25/2015 |
-----------------------------------
kentot| 20 | 300 | 05/25/2015 |
-----------------------------------
因此空白字段将填充原始内容的值和 向下拖动,直到另一个具有简短值的原始数据将填充空白行 顶行内容
表是手动导入到数据库中的,假设列只有三个 Name(varchar) Age(int) Salary (int) Date Paid (Date) 表名称=“Empyoee”数据库名称=“Company”
最佳答案
你的问题很奇怪......为什么有人想这样做?
无论如何,要做到这一点,如何创建/生成该表很有趣。你的问题很奇怪......我想你想知道,在服务器构建它并创建 HTML 表之后如何填充该表(因为你在这里的帖子标题)。另一方面,这个“php”标签在此范围内没有任何意义......
JavaScript 解决方案:
var trs = document.getElementsByTagName('tr');
var innerHTML = "";
for (var i = 0; i < trs.length; i++){
if (trs[i].className !== "heading") {
innerHTML = (trs[i].innerHTML.children[0] == "") ? innerHTML : trs[i].innerHTML;
trs[i].innerHTML = innerHTML;
}
}
请注意,在此示例中,您必须将描述行的类名设置为“heading”,这不会从脚本中解释。如果您的服务器单独执行此操作,只需遵循与我的 JavaScript 中相同的逻辑即可。始终检查下一个元素是否为空 - 如果是:像以前一样填写相同的字符串;如果不是:获取新字符串并将其填充到所有接下来的空单元格中,等等......
关于php - mysql查询如何使用其顶行的值和内容填充空白行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30665489/