 |
ต้องการดึงข้อมูลทุก record ทั้งหมด 3 ตาราง มาแสดงต่อกัน ต้องทำไงครับ |
|
 |
|
|
 |
 |
|
อยากให้ข้อมูลแสดงต่อกันเลยครับ คือนำข้อมูลจาก 3 ตารางมาแสดงต่อกันโดยใช้ jobid ในการเรียง
ตอนนี้ทำไว้แต่แยกเป็น 3 ตาราง ใช้วิธี select ซ้ำ อยากทราบว่ามีวิธีไหนบ้างไหมครับ
Code
โครงสร้างตาราง `service_air`
--
CREATE TABLE `service_air` (
`jobid` varchar(11) NOT NULL,
`AirConsignee_name` varchar(100) NOT NULL,
`AirType` varchar(6) NOT NULL,
`AirAt` varchar(5) NOT NULL,
`AirPort` varchar(20) NOT NULL default 'Suvarnabhumi Airport',
`AirAw_id` varchar(30) NOT NULL,
`AirInv_id` varchar(30) NOT NULL,
`AirCont20` int(5) NOT NULL,
`AirCont40` int(5) NOT NULL,
`AirPackage` int(15) NOT NULL,
`AirGross_weight` decimal(15,2) NOT NULL,
`AirDescription` varchar(250) default '-',
`AirAttach_aw` varchar(50) NOT NULL,
`AirAttach_inv` varchar(50) NOT NULL,
PRIMARY KEY (`jobid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Code
โครงสร้างตาราง `service_sea`
--
CREATE TABLE `service_sea` (
`jobid` varchar(11) NOT NULL,
`SeaConsignee_name` varchar(100) NOT NULL,
`SeaType` varchar(6) NOT NULL,
`SeaAt` varchar(5) NOT NULL,
`SeaVessel` varchar(25) NOT NULL,
`SeaPort` varchar(18) NOT NULL,
`SeaBl_id` varchar(30) NOT NULL,
`SeaInv_id` varchar(30) NOT NULL,
`SeaCont20` int(5) NOT NULL,
`SeaCont40` int(5) NOT NULL,
`SeaPackage` int(15) NOT NULL,
`SeaGross_weight` decimal(15,2) NOT NULL,
`SeaDescription` varchar(250) default '-',
`SeaAttach_bl` varchar(30) NOT NULL,
`SeaAttach_inv` varchar(30) NOT NULL,
PRIMARY KEY (`jobid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Code
โครงสร้างตาราง `service_truck`
--
CREATE TABLE `service_truck` (
`jobid` varchar(11) NOT NULL,
`TruckConsignee_name` varchar(100) NOT NULL,
`TruckType` varchar(6) NOT NULL,
`TruckAt` varchar(5) NOT NULL,
`TruckPort` varchar(30) NOT NULL,
`TruckBl_id` varchar(30) NOT NULL,
`TruckInv_id` varchar(30) NOT NULL,
`TruckCont20` int(5) NOT NULL,
`TruckCont40` int(5) NOT NULL,
`TruckPackage` int(15) NOT NULL,
`TruckGross_weight` decimal(15,2) NOT NULL,
`TruckDescription` varchar(250) default '-',
`TruckAttach_bl` varchar(30) NOT NULL,
`TruckAttach_inv` varchar(30) NOT NULL,
PRIMARY KEY (`jobid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Tag : PHP, MySQL
|
ประวัติการแก้ไข 2013-02-13 06:20:16 2013-02-13 06:25:54
|
 |
 |
 |
 |
Date :
2013-02-13 06:13:57 |
By :
flintstone |
View :
927 |
Reply :
13 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ใช้พวก UNION หรือ UNION ALL ครับ
|
 |
 |
 |
 |
Date :
2013-02-13 06:20:30 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Alias Column คืออะไรหรอครับไม่รู้จริงๆ เอาไปใช้ร่วมกับ select ..... union ใช่ไหมครับ
แล้ว union เราใช้ order by ได้ไหมครับ เมื่อกี้ลอง order by แล้วไม่ได้
|
 |
 |
 |
 |
Date :
2013-02-13 06:41:51 |
By :
flintstone |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Go to : SQL ALIAS
Alias ไม่แน่ใจว่า Soft ได้ครับ
|
 |
 |
 |
 |
Date :
2013-02-13 06:52:22 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
soft คืออะไรครับ ขอบคุณมากสำหรับคำแนะนำนะครับ ตอนนี้ขอไปลองใช้วิธี Alias ก่อน ได้ไม่ได้ยังไงจะมาบอกครับ
|
 |
 |
 |
 |
Date :
2013-02-13 06:58:52 |
By :
flintstone |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ช่วยดูให้หน่อยครับ มันไม่แสดงอะไรออกมาเลย ลงอใส่ UNION ก็ไม่มีอะไรเกิดขึ้น
$strSQL = " SELECT jobid,Consignee_name,Type,At,Vessel AS ves,Port,Bl_id,Inv_id,Cont20,Cont40,
Package,Gross_weight,Description,Attach1,attach2 FROM service_air
SELECT jobid,Consignee_name,Type,At,Vessel,Port,Bl_id,Inv_id,Cont20,Cont40,
Package,Gross_weight,Description,Attach1,attach2 FROM service_sea
";
|
 |
 |
 |
 |
Date :
2013-02-13 07:17:41 |
By :
flintstone |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
มี select ซ้อน 2 ตัว น่าจะผิดหลักคิวรี่ครับ
|
 |
 |
 |
 |
Date :
2013-02-13 08:17:00 |
By :
apisitp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอนนี้ก็ยังทำไม่ได้เลย ถ้าไม่รบกวนเกินไป ช่วยเขียนโค้ดให้ทีได้ไหมครับ ค้างที่ส่วนนี้ไปทำอะไรต่อไม่ได้เลย
|
 |
 |
 |
 |
Date :
2013-02-13 08:57:59 |
By :
flintstone |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เขียนไม่เป็นครับ รอหน่อยครับ อาจจะมีคนช่วยได้
|
 |
 |
 |
 |
Date :
2013-02-13 09:02:26 |
By :
apisitp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
จากที่ลองโค้ดเอง จะมีข้อความนี้ขึ้นครับ
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\kline\intra.php on line 39
มันเกิดจากอะไรครับ ตอนใช้ตาราง service_air union service_truck ไม่มีข้อความนี้เกิดขึ้น
|
 |
 |
 |
 |
Date :
2013-02-13 09:07:20 |
By :
flintstone |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ทำได้แล้วครับ ขอบคุณสำหรับทุกคำแนะนำครับ เอาโค้ดมาแปะไว้ให้เผื่อมีใครทำแบบเดียวกัน
Code
$strSQL = " SELECT jobid,Consignee_name,Type,At,Vessel,Port,Bl_id,Inv_id,Cont20,Cont40,
Package,Gross_weight,Description,Attach1,Attach2 FROM service_sea
UNION
SELECT jobid,Consignee_name,Type,At,'Vessel',Port,Bl_id,Inv_id,Cont20,Cont40,
Package,Gross_weight,Description,Attach1,Attach2 FROM service_air
UNION
SELECT jobid,Consignee_name,Type,At,'Vessel',Port,Bl_id,Inv_id,Cont20,Cont40,
Package,Gross_weight,Description,Attach1,Attach2 FROM service_truck
ORDER BY jobid ";
|
 |
 |
 |
 |
Date :
2013-02-13 09:47:31 |
By :
flintstone |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เห็นป่ะ....ทำเองจนได้ เก่งมากครับ 
|
 |
 |
 |
 |
Date :
2013-02-13 10:25:44 |
By :
apisitp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|