[英]Merge column entries in mysql
PeterM幫助我解決了這個問題,但是我不想創建一個新的問題,這就是為什么我要編輯這個問題。 我遇到另一個問題,對不起,我是sql的新手。
這是我的代碼,從數據庫輸出我需要的所有信息。 我想要的是:我創建了名為“ customers”且表名為“ id and customername”的表。 然后,我用INSERT INTO“ customers”創建了簡單的腳本,是的,它的腳本類似於管理頁面。 這個想法是:我想從一個單獨的頁面添加新訂單,例如:admin.php,因此我不必從文件中添加新訂單。 如何輕松做到這一點? 我的admin.php文件包含:INSERT INTOcustomers(客戶名稱)VALUES(customername)及其工作方式,我可以向數據庫中添加新訂單,當我填寫html表單時,它不會顯示我的新添加訂單。
<?php
$output = "SELECT *, SUM(enddate - startdate) AS time FROM employees GROUP
BY id";
$result = mysqli_query($conn, $output);
WHILE ($row = mysqli_fetch_assoc($result)) {
$EMPLOYEE = $row['employee'];
$CUSTOMER = $row['customername'];
$WORKDATE = $row['workdate'];
$WORKTYPE = $row['worktype'];
$DAYHOURS = $row['startdate'];
$ENDDATE = $row['enddate'];
$TOTAL = $row['time'];
echo "
<tr>
<td>$EMPLOYEE</td>
<td>$CUSTOMER</td>
<td>$WORKDATE</td>
<td>$WORKTYPE</td>
<td>$DAYHOURS</td>
<td>$ENDDATE</td>
<td>$TOTAL</td>
</tr>";
}
?>
我的HTML表單:
<div class='row'>
<div class='col-25'>
<label for='customers'>Choose OrderName</label>
</div>
<div class='col-75'>
<select name='customername'>
<?php
$customers = "SELECT customername FROM customers";
$result = mysqli_query($conn, $customers);
WHILE ($row = mysqli_fetch_assoc($result)) {
$customer = $row['customername'];
echo "<option value=''>$customer</option>";
}
?>
</select>
</div>
</div>
您應該將查詢更改為以下內容:
SELECT *, SUM(`enddate` - `startdate`) AS time FROM `employees` GROUP BY `employee`;
首先,你需要減去startdate
從enddate
,然后讓所有的分組結果的總和,因此SUM
的一部分。
這應該給您一個與此類似的結果
結果 :
| id | employee | startdate | enddate | time |
|----|----------|-----------|---------|------|
| 8 | David | 8 | 22 | 17 |
time
欄是您需要的。
我做了一個小提琴,您可以在其中查看和測試它的工作原理, http://sqlfiddle.com/#!9 / 40a959 / 5
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.