สอบถามการ Union ข้อมูลข้ามฐานข้อมูลค่ะ มีฐานข้อมูล 3 ตัว และมีตารางที่เหมือนกันตามนี้ค่ะ
ดันๆๆๆๆ
Date :
2010-04-10 16:25:33
By :
yingnoi
Code (PHP)
$ServerName = "localhost";
$DatabaseName = "smdb";
$User = "root";
$Password = "";
$row = 0;
$list = array();
$Conn = mysql_connect($ServerName,$User,$Password) or die ("ไม่สามารถติดต่อกับเซิร์ฟเวอร์ได้");
mysql_select_db("db3",$Conn) or die ("ไม่สามารถติดต่อกับฐานข้อมูลได้");
$sql = "Select empcode , timein , timeout From list1 ";
$result = Mysql_Query($sql);
while(list($empcode , $timein , $timeout) = Mysql_fetch_row($result)){
$list[$row] = "INSERT INTO list2 (empcode , timein , timeout) values ('".$empcode."','".$timein."','".$timeout."');";
$row++;
}
$Conn = mysql_connect($ServerName,$User,$Password) or die ("ไม่สามารถติดต่อกับเซิร์ฟเวอร์ได้");
mysql_select_db("db2",$Conn) or die ("ไม่สามารถติดต่อกับฐานข้อมูลได้");
$sql = "Select empcode , timein , timeout From list1 ";
$result = Mysql_Query($sql);
while(list($empcode , $timein , $timeout) = Mysql_fetch_row($result)){
$list[$row] = "INSERT INTO list2 (empcode , timein , timeout) values ('".$empcode."','".$timein."','".$timeout."');";
$row++;
}
$Conn = mysql_connect($ServerName,$User,$Password) or die ("ไม่สามารถติดต่อกับเซิร์ฟเวอร์ได้");
mysql_select_db("db1",$Conn) or die ("ไม่สามารถติดต่อกับฐานข้อมูลได้");
$sql = "Select empcode , timein , timeout From list1 ";
$result = Mysql_Query($sql);
while(list($empcode , $timein , $timeout) = Mysql_fetch_row($result)){
$list[$row] = "INSERT INTO list2 (empcode , timein , timeout) values ('".$empcode."','".$timein."','".$timeout."');";
$row++;
}
$count = count($row);
for($i = 0;$i<$count;$i++){
Mysql_Query($list[$i]);
}
ผมไม่ได้ TEST แต่น่าจะประมาณนี้ถ้าเป็นผมเขียน ลองเอาไปประยุคดูนะครับ
Date :
2010-04-12 09:41:47
By :
jankasion
select list2.empcode , list2.timein , list2.timeout from
( select empcode , timein , timeout from db1.list1
union all
select empcode , timein , timeout from db2.list1
union all
select empcode , timein , timeout from db3.list1
) list2
Date :
2010-04-12 10:08:23
By :
windersun
พอดีค้นหาเกี่ยวกับกระทู้นี้พอดี แต่อยากสอบถามเพิ่มเติ่มจาก Code ข้างบนว่า
หากผม UNION ข้อมูลเข้าไปเรียบร้อยแล้ว แต่ผมอยากรู้ว่า ข้อมูลชุดนี้มาจาก ตารางไหน
ผมต้องเขียน SQL หรือ เขียน Code ตรวจสอบยังไงคับ
select list2.empcode , list2.timein , list2.timeout from
( select empcode , timein , timeout from db1.list1
union all
select empcode , timein , timeout from db2.list1
union all
select empcode , timein , timeout from db3.list1
) list2
Date :
2011-07-11 10:48:11
By :
หนุ่มช่างฝัน
Load balance : Server 04