Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,028

HOME > PHP > PHP Forum > ขอความช่วยเหลือเกี่ยวกับ SQL code ให้แสดงผลลัพธ์เป็นตารางเหมือนในรูปครับ เขียนยังไงครับ



 

ขอความช่วยเหลือเกี่ยวกับ SQL code ให้แสดงผลลัพธ์เป็นตารางเหมือนในรูปครับ เขียนยังไงครับ

 



Topic : 129396



โพสกระทู้ ( 11 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



ขอความช่วยเหลือเกี่ยวกับ SQL code ให้แสดงผลลัพธ์เป็นตารางเหมือนในรูปครับเขียนยังไงครับ

ตารางข้อมูล



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2017-11-01 16:23:09 By : Siripong-Promduang View : 856 Reply : 8
 

 

No. 1



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



สถานะออฟไลน์


Code (SQL)
select
   product,
   sum(holding='< 1 week') as `< 1 week`,
   sum(holding='> 1 week') as `> 1 week`,
   sum(holding='> 5 weeks') as `> 5 weeks`,
   ...
from table
group by product







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-01 23:54:44 By : Chaidhanan
 


 

No. 2



โพสกระทู้ ( 11 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอบคุณครับ code ที่ให้มารันได้แล้วครับ
จาก code ค่า holding จะถูกกำหนดตายตัว
แต่ค่า holding จริงๆ จะเปลี่ยนแปลงตลอดขึ้นอยู่กับเวลาครับ
เช่น holding > 5 weeks อีกสามวันก็จะกลายเป็น > 6 weeks
จะต้องเขียน code ยังไงครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-02 09:45:11 By : Siripong-Promduang
 

 

No. 3



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



สถานะออฟไลน์


และค่าใน database เปลี่ยนแปลงยังไง ใช้อะไรเปลี่ยน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-02 11:47:51 By : Chaidhanan
 


 

No. 4



โพสกระทู้ ( 11 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ข้อมูล database เป็นแบบนี้ครับ

ข้อมูล database

php code ที่ผมใช้ update ครับ
<?
$sql_data="SELECT * FROM Inventory ORDER BY last_update DESC";
$result_data = mysql_query($sql_data);

while($result=mysql_fetch_array($result_data))
{
$mid = $result[mid];
$fdate = $result[Input_time];
$cdate = date("Y-m-d");

//calculate qty week holding
$timediffwk = (strtotime($cdate)-strtotime($fdate))/604800; // 1 week = 60*60*24*7
$timediffwk1 =floor($timediffwk);

//update holding time
$sql_holding = "Update ProductHDD set hold='$timediffwk1' where mid='$mid'";
$result_update = mysql_query($sql_holding);
}
?>

ผลลัพธ์ที่ใช้ code พี่เขียนออกมาได้แบบนี้ครับ
<?
$sql_hold= "select product, hold,
sum(hold='0') as `<1week`,
sum(hold='1') as `>1week`,
sum(hold='2') as `>2weeks`,
sum(hold='3') as `>3weeks`,
sum(hold='4') as `>4weeks`,
sum(hold='5') as `>5weeks`,
sum(hold='6') as `>6weeks`,
sum(hold='7') as `>7weeks`,
sum(hold='8') as `>8weeks`,
sum(hold='9') as `>9weeks`,
sum(hold='10') as `>10weeks`,
COUNT(product) as `Total`
from Inventory group by product ORDER BY Total DESC";

$result_hold = mysql_query($sql_hold);
$i=0;
?>
<table width="99%" border="1" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC">
<tr>
<td rowspan="2" align="center" bgcolor="#99FFFF"><strong>No.</strong></td>
<td rowspan="2" align="center" bgcolor="#99FFFF"><strong>Product</strong></td>
<td colspan="5" align="center" bgcolor="#99FFFF"><strong>HDD Holding in PE Lap </strong></td>
<td rowspan="2" align="center" bgcolor="#99FFFF"><strong>Total<br/>(HDD)
</strong></td>
</tr>
<tr>
<td align="center" bgcolor="#99FFFF"><strong>&lt; 1 Wk</strong></td>
<td align="center" bgcolor="#99FFFF"><strong>&gt; 1 Wk</strong></td>
<td align="center" bgcolor="#99FFFF"><strong>&gt; 2 Wk</strong></td>
<td align="center" bgcolor="#99FFFF"><strong>&gt; 3 Wk</strong></td>
<td align="center" bgcolor="#99FFFF"><strong>&gt; 4 Wk</strong></td>
</tr>
<? while($result_week=mysql_fetch_array($result_hold)) { $i++; ?>
<tr>
<td align="center"><? echo $i;?></td>
<td align="center"><strong><? echo $product = $result_week[product];?></strong></td>
<td align="center"><? echo $result_week['<1week'];?></td>
<td align="center"><? echo $result_week['>1week'];?></td>
<td align="center"><? echo $result_week['>2weeks'];?></td>
<td align="center"><? echo $result_week['>3weeks'];?></td>
<td align="center"><? echo $result_week['>4weeks'];?></td>
<td align="center"><? echo $result_week['Total'];?></td>
</tr>
<? } ?>
</table>

ผลลัพธ์
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-02 14:11:48 By : Siripong-Promduang
 


 

No. 5



โพสกระทู้ ( 11 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ผมจะ aoturun เพื่อ calculation week และ update "Input_time" ทุกวันเวลาเที่ยงคืนครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-02 14:15:03 By : Siripong-Promduang
 


 

No. 6



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



สถานะออฟไลน์


หาค่า hold มาสร้าง label
Code (PHP)
$rs=$db->query('select distinct hold from tablename order by hold');
$sql = "select hold";
while($ro=$rs->fetch_assoc()){
   $h = $ro['hold'];
   $sql.=', sum(hold='.$h.') as '.($h==0 ? '< 1 week' : '`> '.$h.' week'.($h>1? 's`' : '`');
}
$sql.=' from tablename group by product';


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-02 14:44:24 By : Chaidhanan
 


 

No. 7



โพสกระทู้ ( 11 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

แจ้ง error ครับ
หาจุด error ไม่เจอ


Parse error: syntax error, unexpected ';' in D:\QAFA\www\PE\Holding-test.php on line 5

Code
$rs=$db->query('select distinct hold from tablename order by hold');
$sql = "select hold";
while($ro=$rs->fetch_assoc()){
$h = $ro['hold'];
$sql.=', sum(hold='.$h.') as '.($h==0 ? '< 1 week' : '`> '.$h.' week'.($h>1? 's`' : '`');
}
$sql.=' from tablename group by product';

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-02 17:12:36 By : Siripong-Promduang
 


 

No. 8



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



สถานะออฟไลน์


ตกวงเล็บปิดไปตัว บันทัด 5

code ที่ให้เป็นแค่ตัวอย่างบางส่วน ต้องนำไปเขียนเพิ่มเอาเองนะครับ


ประวัติการแก้ไข
2017-11-02 18:00:06
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-02 17:56:35 By : Chaidhanan
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอความช่วยเหลือเกี่ยวกับ SQL code ให้แสดงผลลัพธ์เป็นตารางเหมือนในรูปครับ เขียนยังไงครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่