ต้องการดึงข้อมูลทุก 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 :
899
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
Load balance : Server 04