วิธีการจัดข้อมูลให้ตรงกับ ตารางค่ะ นั่งทำตั้งนาน นึกไม่ออกเลย
สวัสดีค่ะพี่ ๆทุก ๆท่าน
ตอนนี้หนู ติดปัญหาที่จะทำให้ข้อมูลตรงกับ ตารางค่ะ
ข้อมูลจะดึงมาจากตาราง 2 ตารางค่ะ
ตารางแรก เป็น header มี
id , header
1 กระทิงแดง
2. ลิโพ
3. เอ็มร้อย
ตาราง B เป็นข้อมูลค่ะ
id , klung , header , total
1. หนองสิง 1 100
2. หนองสิง 2 200
3. หนองปลิง 3 100
4. หนองปลิง 1 100
ตามรูปนี้ค่ะ
พี่ ๆ ช่วยหน่อยนะคะ
ฐานข้อมูลค่ะ
Code (PHP)
CREATE TABLE IF NOT EXISTS `a` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`header` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=5 ;
INSERT INTO `a` (`id`, `header`) VALUES
(1, 'กระทิงแดง'),
(2, 'ลิโพ'),
(3, 'เบียร์สิงห์'),
(4, 'เบียร์ไฮเนเก้น');
CREATE TABLE IF NOT EXISTS `b` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`klung` varchar(150) COLLATE utf8_unicode_ci NOT NULL,
`header` int(11) NOT NULL,
`total` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=6 ;
INSERT INTO `b` (`id`, `klung`, `header`, `total`) VALUES
(1, 'หนองสิง', 1, 100),
(2, 'หนองสิง', 2, 200),
(3, 'หนองสิง', 4, 50),
(4, 'หนองปลิง', 2, 150),
(5, 'หนองปลิง', 4, 250);
Tag : PHP, MySQL, HTML/CSS, Ajax
ประวัติการแก้ไข 2014-02-26 18:11:55
Date :
2014-02-26 16:17:48
By :
Th@iDev
View :
1877
Reply :
40
จะให้ข้อมูลออกมาเป็นแบบไหนหรอครับ งง?
Date :
2014-02-26 16:43:23
By :
golfaa
ออกมาตาม ภาพ เลยค่ะ
อย่างแถวที่ 4 ถ้าเราจะให้ ค่า 100 มันไปอยู่ที่ คอลัม เอ็มร้อย แบบนี้ค่ะพี่
Date :
2014-02-26 16:44:42
By :
Th@iDev
ไม่รู้ถูกไหมนะ เพราะเขียนสด
Code (PHP)
<table border="1">
<tr>
<?
//SELECT ดึงข้อมูล จาก ตาราง A เพื่อเอาค่า ID กับ header
$results = mysql_query("SELECT * FROM A");
$checknum = mysql_num_rows($results);
while($f = mysql_fetch_array($results))
{
?>
<td>
<?print $f["header"];?>
</td>
<?
}
?>
</tr>
<?
//SELECT ดึงข้อมูล จาก ตาราง B
$results2 = mysql_query("SELECT * FROM B");
$checknum2 = mysql_num_rows($results2);
while($f2 = mysql_fetch_array($results2))
{
?>
<tr>
<?
while($f = mysql_fetch_array($results))
{
$Check = mysql_query("SELECT * FROM B WHERE klung = '".$f2[klung]."' and header = '".$f[id]."'");
$checknum3 = mysql_num_rows($Check);
?>
<td>
<?
if($checknum3 != '0'){
print "จำนวนออกมา";
}else{
print " ";
}
?>
</td>
<?
}
?>
</tr>
<?
}
?>
</table>
ประวัติการแก้ไข 2014-02-26 16:48:54
Date :
2014-02-26 16:48:18
By :
FreshyMusiC
มันไม่แสดงผลนะคะ โค้ดข้างบน
นี่ฐานข้อมูลค่ะ
Code (PHP)
CREATE TABLE IF NOT EXISTS `a` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`header` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=5 ;
INSERT INTO `a` (`id`, `header`) VALUES
(1, 'กระทิงแดง'),
(2, 'ลิโพ'),
(3, 'เบียร์สิงห์'),
(4, 'เบียร์ไฮเนเก้น');
CREATE TABLE IF NOT EXISTS `b` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`klung` varchar(150) COLLATE utf8_unicode_ci NOT NULL,
`header` int(11) NOT NULL,
`total` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=6 ;
INSERT INTO `b` (`id`, `klung`, `header`, `total`) VALUES
(1, 'หนองสิง', 1, 100),
(2, 'หนองสิง', 2, 200),
(3, 'หนองสิง', 4, 50),
(4, 'หนองปลิง', 2, 150),
(5, 'หนองปลิง', 4, 250);
ประวัติการแก้ไข 2014-02-26 17:38:57
Date :
2014-02-26 17:08:18
By :
Th@iDev
หรือพี่ๆ คนใหนมีวิธีจัดการแบบใหนให้ง่ายที่สุดบ้างคะ
Date :
2014-02-26 17:50:08
By :
Th@iDev
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<table border="1">
<tr>
<td>
คลัง
</td>
<?
include("include/mySqlFunc.php");
query("USE test");
//SELECT ดึงข้อมูล จาก ตาราง A เพื่อเอาค่า ID กับ header
$results = mysql_query("SELECT * FROM a");
$checknum = mysql_num_rows($results);
while($f = mysql_fetch_array($results))
{
?>
<td>
<?print $f["header"];?>
</td>
<?
}
?>
</tr>
<?
//SELECT ดึงข้อมูล จาก ตาราง B
$results2 = mysql_query("SELECT * FROM b GROUP BY klung");
$checknum2 = mysql_num_rows($results2);
while($f2 = mysql_fetch_array($results2))
{
?>
<tr>
<td>
<?
print $f2[klung];
?>
</td>
<?
$results = mysql_query("SELECT * FROM a");
while($f = mysql_fetch_array($results))
{
$Check = mysql_query("SELECT sum(total) as total2 FROM b WHERE klung = '".$f2[klung]."' and header = '".$f[id]."'");
$checknum3 = mysql_num_rows($Check);
while($f3 = mysql_fetch_array($Check))
{
?>
<td>
<?
if($checknum3 != '0'){
print $f3[total2];
}else{
print " ";
}
?>
</td>
<?
}
}
?>
</tr>
<?
}
?>
</table>
ประวัติการแก้ไข 2014-02-26 18:12:55 2014-02-26 18:13:16 2014-02-26 18:21:14 2014-02-26 18:24:15
Date :
2014-02-26 18:12:43
By :
FreshyMusiC
ยังไม่เอาะ เลย ฮือ ๆ
กลายเป็นตารางว่าง ๆ เลย
Date :
2014-02-26 18:19:18
By :
Th@iDev
ลองดู ที่ No. 6 ใหม่ครับ ปรับให้แล้ว ของเรายังออกเลย
Date :
2014-02-26 18:26:11
By :
FreshyMusiC
ของหนูมันเป็นแบบนี้อ่ะค่ะ
มันเกี่ยวกะหนูใช้ Xampp ใหมคะ
ประวัติการแก้ไข 2014-02-26 18:42:27
Date :
2014-02-26 18:41:35
By :
Th@iDev
ขอดู code หน่อยสิครับ
Date :
2014-02-26 18:48:12
By :
FreshyMusiC
เปลี่ยนจาก <? เป็น <?php ยัง?
Date :
2014-02-26 18:49:06
By :
itpcc
Code (PHP)
<?php
mysql_connect("localhost","root","123") or die("Cannot connect the Server");
mysql_select_db("test") or die("Cannot select database");
mysql_query("set character set utf8");
?>
<table border="1">
<tr>
<td>
คลัง
</td>
<?php
#include("include/mySqlFunc.php");
#query("USE test");
//SELECT ดึงข้อมูล จาก ตาราง A เพื่อเอาค่า ID กับ header
$results = mysql_query("SELECT * FROM a");
$checknum = mysql_num_rows($results);
while($f = mysql_fetch_array($results)){
?>
<td>
<?=$f["header"];?>
</td>
<?php } ?>
</tr>
<?php
//SELECT ดึงข้อมูล จาก ตาราง B
$results2 = mysql_query("SELECT * FROM b GROUP BY klung");
$checknum2 = mysql_num_rows($results2);
while($f2 = mysql_fetch_array($results2)){
?>
<tr>
<td>
<?php
echo $f2['klung'];
?>
</td>
<?php
$results = mysql_query("SELECT * FROM a");
while($f = mysql_fetch_array($results)){
$Check = mysql_query("SELECT sum(total) as total2 FROM b WHERE klung = '".$f2['klung']."' AND header = '".$f['id']."'");
if(!$Check){
echo mysql_error();
exit();
}
$checknum3 = mysql_num_rows($Check);
while($f3 = mysql_fetch_array($Check)){
?>
<td>
<?php
# print_r($f3); // ไม่เอาะเลย
if($checknum3 != '0'){
echo $f3['total2'];
}else{
echo " ";
}
?>
</td>
<?php
}
}
?>
</tr>
<?php
}
?>
</table>
Date :
2014-02-26 18:53:38
By :
Th@iDev
ลอง
Code (PHP)
echo "SELECT sum(total) as total2 FROM b WHERE klung = '".$f2['klung']."' AND header = '".$f['id']."'";
ว่ามีค่าไหมครับ
Date :
2014-02-26 19:02:33
By :
FreshyMusiC
พี่ Unidentifier คะ หนูอ่านแล้ว ไม่เข้าใจอ่ะค่ะ พี่ยกตัวอย่างให้หนูหน่อยได้ไม๊คะ
Date :
2014-02-26 19:10:03
By :
Th@iDev
ทำไมหัวตารางของแถว ถึงมีข้อมูลซ้ำกันได้ล่ะครับ
น่าจะมีแค่
หนองสิง
หนองปลิง
แล้วเอาข้อมูลมาใส่บวกเพิ่มไปเรื่อยๆ
INSERT INTO `a` (`id`, `header`) VALUES
(1, 'กระทิงแดง'),
(2, 'ลิโพ'),
(3, 'เบียร์สิงห์'),
(4, 'เบียร์ไฮเนเก้น');
INSERT INTO `b` (`id`, `klung`, `header`, `total`) VALUES
(1, 'หนองสิง', 1, 100),
(2, 'หนองสิง', 2, 200),
(3, 'หนองสิง', 4, 50),
(4, 'หนองปลิง', 2, 150),
(5, 'หนองปลิง', 4, 250);
(6, 'หนองสิง', 4, 300), <=== เพิ่มข้อมูลเข้าไป
น่าจะเป็นแบบนี้มากกว่าน่ะ
กระทิงแดง ลิโพ เบียร์สิงห์ เบียร์ไฮเนเก้น
หนองสิง 100 200 350
หนองปลิง 150 250
ประวัติการแก้ไข 2014-02-26 22:15:34
Date :
2014-02-26 22:14:51
By :
sakuraei
เฮ้อ .. ไม่ได้สักที
Date :
2014-02-26 22:29:00
By :
Th@iDev
มีข้อมูลให้ลองแบบเต็มอัตรามั๊ยครับ เดี๋ยวพี่ช่วยเขียนให้
Date :
2014-02-26 22:33:30
By :
sakuraei
ข้อมูลมันมีแบบนี้ค่ะ
เลยไม่รู้ว่าจะทำยังไงต่อ
อยากจะให้มันจัดเรียงให้มันตรง แล้วจะได้นำไปประยุกต์ใช้กับอันอื่น ๆ ด้วยค่ะพี่ Unidentifier
คือหนูอยากจะทำให้ว่า ถ้าเผื่อ เราจะเชคข้อมูลแต่ละคลัง ว่าสินค้าชนิดนี้ มีอยูเท่าใหร่ อะไรทำนองนี้อ่ะค่ะ
โดย เราสามารถเพิ่มคลัง เพิ่มสินค้าเข้าไป พอแสดงผล ก็ให้แสดงผลแบบนี้ อะไรนำนองนี้อ่ะค่ะ
ขอบคุณมาก ๆ เลยค่ะ หนูจะรอนะค่ะ
Date :
2014-02-26 22:37:34
By :
Th@iDev
ทีแรก หนูว่าจะลองใช้ Array แต่มันก็ไม่รู้ว่าจะ Map ให้มันไปตรงกันได้อย่างไร ให้ออกมาในรูปแบบ table น่ะค่ะ มันไม่ตรงช่อง
Date :
2014-02-26 22:39:02
By :
Th@iDev
ใช่แล้วค่ะ เรามาสร้างลักษณะให้มันคล้ายแบบนั้นก็ได้ค่ะ
ชักจะเมากาแฟ
Date :
2014-02-26 22:57:08
By :
Th@iDev
ถ้าไม่เสร็จวันนี้ไม่ทันแย้วววววววววววววววว
และไม่เก่งด้าน Jquery เลยต้องใช้ PHP เพียว ๆ
ประวัติการแก้ไข 2014-02-26 23:45:06
Date :
2014-02-26 23:28:28
By :
Th@iDev
ถ้าจะใช้ Array จะมี SQL ประมาณนี้ครับ (มีแต่หลักการ )
Code (SQL)
SELECT * FROM `a`
จะได้ข้อมูลมาเป็นหัวตาราง
ดึงข้อมูลรายงาน
Code (SQL)
SELECT `klung`, `header`, SUM(`total`) FROM `b` GROUP BY `klung`, `header`
จะได้อาร์เรย์ที่จัดกลุ่มข้อมูลเรียบร้อย
ต่อไปมีกี่เรคอร์ดก็วนลูปไปเรื่อยๆ
ในลูปก็ให้วนอาร์เรย์ทีได้จากตาราง a มาตรวจสอบว่ามีข้อมูล header ที่ตรงกับ อาร์เรย์ แต่ละคอลัมน์หรือเปล่า
Date :
2014-02-26 23:38:59
By :
{Cyberman}
คือเอาใส่ Array แล้วค่ะ แต่ว่า พอจะนำไปลูปกับตาราง มันไม่ตรงคอลัมน่ะค่ะพี่
หนูเลยจนปัญญา นี่ก็ลองนั่ง ๆ ค้นจน phpmanual ตัวหนังสือจะหลบเมาส์หนูแระ ฮือๆ
Date :
2014-02-26 23:48:38
By :
Th@iDev
5555 พยายามเข้านะครับ
Date :
2014-02-26 23:55:07
By :
FreshyMusiC
ออกไปหาอะไรใส่ท้องมา ... รอสักครู่ครับ
Date :
2014-02-26 23:56:47
By :
sakuraei
ก่อนอื่นเรารวลรวมจำนวนด้วยคำสั่งนี้ครับ
Quote: SELECT klung, header, sum( total )
FROM `b`
GROUP BY klung, header
จากข้อมูลชุดนี้
Quote: INSERT INTO `b` VALUES (1, 'หนองสิง', 1, 100);
INSERT INTO `b` VALUES (2, 'หนองสิง', 2, 200);
INSERT INTO `b` VALUES (3, 'หนองสิง', 4, 50);
INSERT INTO `b` VALUES (4, 'หนองปลิง', 2, 150);
INSERT INTO `b` VALUES (5, 'หนองปลิง', 4, 250);
INSERT INTO `b` VALUES (6, 'หนองสิง', 4, 300);
INSERT INTO `b` VALUES (7, 'หนองสิง', 1, 70);
INSERT INTO `b` VALUES (8, 'หนองสิง', 3, 90);
INSERT INTO `b` VALUES (9, 'หนองปลิง', 1, 120);
INSERT INTO `b` VALUES (10, 'หนองปลิง', 3, 50);
INSERT INTO `b` VALUES (11, 'หนองปลิง', 2, 80);
INSERT INTO `b` VALUES (12, 'หนองปลิง', 4, 60);
INSERT INTO `b` VALUES (13, 'หนองสิง', 2, 110);
เราจะได้ผลลัพธ์ที่จะเอาไปใส่ในตารางแล้วครับ
Quote: klung header sum( total )
หนองปลิง 1 120
หนองปลิง 2 230
หนองปลิง 3 50
หนองปลิง 4 310
หนองสิง 1 170
หนองสิง 2 310
หนองสิง 3 90
หนองสิง 4 350
Date :
2014-02-27 00:01:01
By :
sakuraei
Code (PHP)
<?php
$db = new mysqli('localhost', 'user', 'password', 'dbname');
if ($db->connect_errno) {
echo $db->connect_error;
exit;
}
$produceName = $warehouseName = $data = array();
$objQuery = $db->query('SELECT `id`,`header` FROM `a`'); //SELECT PRODUCE NAME
if(!$objQuery->nem_rows) die("No Produce");
while($objResult = $objQuery->fetch_assoc()) $produceName[$objResult['id']] = $objResult['name'];
$objQuery = $db->query('SELECT `id`,`klung`,`header`,`total` FROM `a`'); //SELECT DATA
if(!$objQuery->nem_rows) die("No Data");
while($objResult = $objQuery->fetch_assoc()){
if(!isset($warehouseName[$objResult['klung']])) $warehouseName[$objResult['klung']] = $objResult['id'];
if(!isset($data[$objResult['klung']])) $data[$objResult['klung']] = array();
$data[$objResult['klung']][$objResult['header']] = intval($objResult['total']);
}
//DISPLAY
?><table>
<thead>
<tr>
<th>id</th>
<th>คลัง</th>
<?php foreach($warehouseName AS $name=>$id) : ?><th id="headWarehouse_<?php echo $id; ?>"><?php echo $name; ?></th>
<?php endforeach; ?>
<th>รวม</th>
</tr>
</thead>
<tbody>
<?php foreach($data AS $name=>$warehouse): ?> <tr>
<td><?php echo $warehouseName[$name]; ?></td>
<td><?php echo $name; ?></td>
<?foreach ($produceName as $id => $name) : ?> <td><?php if(isset($warehouse[$id])) echo $warehouse[$id]; ?></td>
<?php endforeach; ?>
<td><?php echo array_sum($warehouse); ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
Date :
2014-02-27 00:17:37
By :
itpcc
กำลังไล่ทดลองทีละอัน ละอัน อย่าง งง งวย แหะๆ
พี่ Unidentifier คะ
เราจะเอามาทำยังไง ให้มันขึ้น ตรงกับ colum ของ product ได้คะ
ประวัติการแก้ไข 2014-02-27 00:46:00
Date :
2014-02-27 00:33:37
By :
Th@iDev
ได้แล้วครับ จริงๆแล้วไม่ได้ยากอะไรเลย ไม่ต้องใช้ javascript ซะด้วยซ้ำ
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>https://www.thaicreate.com/php/forum/106305.html - การยิงบาร์โค้ด</title>
<meta charset="utf-8" />
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
});
</script>
<style type="text/css">
td{ text-align:center;}
</style>
</head>
<body>
<?php
$link = mysql_connect("localhost","user","password") or die(mysql_error());
mysql_select_db("dbname",$link) or die(mysql_error());
mysql_query("set names utf8");
// เตรียมข้อมูลสินค้า
$sql = "select * from a";
$res = mysql_query($sql) or die(mysql_error());
while($data = mysql_fetch_assoc($res)){
$product[$data["id"]] = $data["header"];
}
//เตรียมข้อมูลคลังสินค้า
$sql = "select distinct klung from b";
$res = mysql_query($sql) or die(mysql_error());
while($data = mysql_fetch_assoc($res)){
$klung[] = $data["klung"];
}
//เตรียมข้อมูลสินค้า
$sql = "SELECT klung, header, sum( total ) as total FROM b GROUP BY klung, header";
$res = mysql_query($sql) or die(mysql_error());
while($data = mysql_fetch_assoc($res)){
$summary[$data["klung"]][$data["header"]] = $data["total"];
}
?>
<table border="1" align="center">
<thead>
<tr>
<td width="150">คลัง / สินค้า</td>
<?php foreach($product as $name) echo "<td width='150'>$name</td>"; ?>
</tr>
</thead>
<tbody>
<?php
foreach($klung as $store){
echo "<tr><td>$store</td>";
foreach($product as $hid => $pname)
echo "<td>{$summary[$store][$hid]}</td>";
echo "</tr>\n";
} ?>
</tbody>
</table>
</body>
</html>
ส่วนนี้เป็นข้อมูลที่ทดสอบ
Quote: CREATE TABLE `a` (
`id` int(11) NOT NULL auto_increment,
`header` varchar(255) collate utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=5 ;
--
-- Dumping data for table `a`
--
INSERT INTO `a` VALUES (1, 'กระทิงแดง');
INSERT INTO `a` VALUES (2, 'ลิโพ');
INSERT INTO `a` VALUES (3, 'เบียร์สิงห์');
INSERT INTO `a` VALUES (4, 'เบียร์ไฮเนเก้น');
-- --------------------------------------------------------
--
-- Table structure for table `b`
--
CREATE TABLE `b` (
`id` int(11) NOT NULL auto_increment,
`klung` varchar(150) collate utf8_unicode_ci NOT NULL,
`header` int(11) NOT NULL,
`total` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=14 ;
--
-- Dumping data for table `b`
--
INSERT INTO `b` VALUES (1, 'หนองสิง', 1, 100);
INSERT INTO `b` VALUES (2, 'หนองสิง', 2, 200);
INSERT INTO `b` VALUES (3, 'หนองสิง', 4, 50);
INSERT INTO `b` VALUES (4, 'หนองปลิง', 2, 150);
INSERT INTO `b` VALUES (5, 'หนองปลิง', 4, 250);
INSERT INTO `b` VALUES (6, 'หนองสิง', 4, 300);
INSERT INTO `b` VALUES (7, 'หนองสิง', 1, 70);
INSERT INTO `b` VALUES (8, 'หนองสิง', 3, 90);
INSERT INTO `b` VALUES (9, 'หนองปลิง', 1, 120);
INSERT INTO `b` VALUES (10, 'หนองปลิง', 3, 50);
INSERT INTO `b` VALUES (11, 'หนองปลิง', 2, 80);
INSERT INTO `b` VALUES (12, 'หนองปลิง', 4, 60);
INSERT INTO `b` VALUES (13, 'หนองสิง', 2, 110);
ผลลัพธ์ที่ได้
Quote: คลัง / สินค้า กระทิงแดง ลิโพ เบียร์สิงห์ เบียร์ไฮเนเก้น
หนองสิง 170 310 90 350
หนองปลิง 120 230 50 310
Date :
2014-02-27 00:48:00
By :
sakuraei
กรี๊สสสสสสสสสสสสส สลบ ได้แล้วค่ะ
หนูนั่งงมมา หนึ่งวันเต็ม ๆ
ขอบคุณพี่ ๆทุก ๆคนมาก ๆ ค่ะ
ว่าแต่ว่า ถ้าหนูเพิ่มข้อมูลสินค้าเพิ่ม มันมี
Notice: Undefined offset: 5 in C:\xampp\htdocs\product\showpro.php on line 56
แบบนี้อ่ะค่ะ
หนู Set error_reporting(E_ALL ^ E_NOTICE); เอาเลยดีกว่า แหะๆ ทางลัด
ประวัติการแก้ไข 2014-02-27 00:59:29
Date :
2014-02-27 00:56:04
By :
Th@iDev
56.echo "<td>{$summary[$store][$hid]}</td>";
เปลี่ยนเป็น
56.echo "<td>".(isset($summary[$store][$hid])?$summary[$store][$hid]:" ")."</td>";
Date :
2014-02-27 00:56:56
By :
sakuraei
ขอบคุณค่าาาาาาา
Date :
2014-02-27 01:00:53
By :
Th@iDev
เย่ ได้ละ
Date :
2014-02-27 05:02:04
By :
mr.v
ตระกูลภาษา Dbase (ตั้งแต่ พ.ศ. 2504) ผู้ใหญ่ลี ใช้คำสั่ง Pivot Table เป็นแล้วนะ
แต่ ณ. พ.ศ. 2557 MySQL Server กลับไม่มีคำสั่งนี้ เป็นซะงั้นไป (มันแปลกดีนะ)
สรุปสิ่งที่ไม่มีใน MySQL
1. CTE
2. Row_Number()
3. More...
Dynamic Pivot Table
Code (SQL)
SET @strSQL = NULL;
SELECT
GROUP_CONCAT(
DISTINCT CONCAT(
'SUM(Case When a.Header = ''', Header, ''' Then Total Else 0 End) AS ',
REPLACE(Header, ' ', '') /*MSSQL == [] == เครื่องหมายง่ามหนังสติ๊ก*/
)
)INTO @strSQL
FROM a;
SET @strSQL = CONCAT(' SELECT b.klung As คลังสินค้า, ', @strSQL, ' ',
' FROM a INNER JOIN b ON a.id= b.header GROUP BY b.klung');
PREPARE stmt FROM @strSQL;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
Good Luck.
Date :
2014-02-27 12:16:40
By :
love9713
ข้อสังเกตุ คำสั่ง GROUP BY ของ MySQL == ภาษาตระกูล Dbase อาทิเซ่น
Select * From Table GROUP BY OneField
ประลาตดีแท้หนอ
[x] ที่ควรมีกลับไม่มี ที่ควรไม่ได้กลับได้ เป็นซะงั้น
Date :
2014-02-27 12:27:22
By :
love9713
Load balance : Server 02