 |
ขอสอบถาม เรื่อง การ select เมื่อได้ค่ามาแล้ว จำนำไปเปรียบเทียบ กับ table อื่น ต่อไปครับ |
|
 |
|
|
 |
 |
|
ถ้าทำตามคำสั่งด้านบน จะได้ pid ค่าเดียว ถูกต้องแล้วครับ แต่ตามที่บอกมาผมเดาว่าคุณต้องการจะ ดึงค่าใน book2 ที่มี pid ตรงกับ book ออกมาทั้งหมด ถ้าเป็นตามนี้ เราต้องใช้วิธีการ join กันครับ
ลอง run code นี้ดูครับ
Code (PHP)
$sql = mysql_db_query($dbname,"SELECT a.pid, a.qty, b.* FROM book a JOIN book2 b ON a.pid=b.pid where a.date = '2010-10-20' GROUP BY a.id ");
$temp_pid = 0;
$bbb = 0;
while($sto = mysql_fetch_array($sql)){
$aaa = $sto[0];////pid
if($temp_pid != 0 && $temp_pid != $aaa) {
echo "$aaa จำนวน $bbb <br>";
$bbb = 0;
$temp_pid = $aaa;
}
$bbb += $sto[1];/// SUM QTY
}
echo "$aaa จำนวน $bbb ";
|
ประวัติการแก้ไข 2010-10-26 10:39:33
 |
 |
 |
 |
Date :
2010-10-26 10:38:24 |
By :
kerb |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
จะทำแบบที่คุณเขียนอยู่ก็ได้ครับ แต่เงื่อนไขที่ 2 ที่จะ Query ต้องอยู่ใน Loop while ของอันแรก
เพราะถ้าอยู่นอก Loop มันจะส่ง qid สุดท้ายที่ Query ได้มาให้ใครเลยเจอแค่ตัวเดียว
แต่ใช้ Join แบบที่ #1 บอกก็สะดวกดีนะครับ
|
 |
 |
 |
 |
Date :
2010-10-26 10:46:08 |
By :
adaaugusta |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณครับ แต่ผมได้ค่า มาเพียง pid ที่ 2 เท่านั้นครับ
Code (PHP)
$sql = mysql_db_query($dbname,"SELECT book.pid, book.qty, book2. * FROM book
JOIN book2
ON book.pid=book2.pid
where book.date = '2010-10-20'
GROUP BY bale.pid ");
$temp_pid = 0;
$bbb = 0;
while($sto = mysql_fetch_array($sql)){
$aaa = $sto[0];////pid
if($temp_pid != 0 && $temp_pid != $aaa) {
echo "$aaa จำนวน $bbb <br>";
$bbb = 0;
$temp_pid = $aaa;
}
$bbb += $sto[1];/// SUM QTY
}
echo "$aaa จำนวน $bbb ";
แล้ว ได้ ค่าตามนี้ครับ 0573 จำนวน 2
ซึ่งยังไม่ครับครับ รบกวน อีกครั้ง ครับผม
|
 |
 |
 |
 |
Date :
2010-10-26 11:40:27 |
By :
เดี่ยว |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
โอ๊ะ ขอแก้ไขครับ ( ขอแก้ ที่ GROUP BY เป็น book.pid น่ะครับ )
Code (PHP)
$sql = mysql_db_query($dbname,"SELECT book.pid, book.qty, book2. * FROM book
JOIN book2
ON book.pid=book2.pid
where book.date = '2010-10-20'
GROUP BY book.pid ");
$temp_pid = 0;
$bbb = 0;
while($sto = mysql_fetch_array($sql)){
$aaa = $sto[0];////pid
if($temp_pid != 0 && $temp_pid != $aaa) {
echo "$aaa จำนวน $bbb <br>";
$bbb = 0;
$temp_pid = $aaa;
}
$bbb += $sto[1];/// SUM QTY
}
echo "$aaa จำนวน $bbb ";
|
 |
 |
 |
 |
Date :
2010-10-26 11:42:41 |
By :
นาย เดี่ยว คนเดิม |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|