มือใหม่ รบกวนสอบถามเวลา select ข้อมูลในตาราง เวลาที่มันไม่มีหน่อยครับ
คือปัญหาผมมีอย่างนี้นะครับ สมมติมีตาราง 2 ตาราง
ตารางแรกมี
ID1,Name1,Data1,Date1
us1,narongchai,ข้อมูล x1,09/02/2015
us2,somchai,ข้อมูล x2,10/10/2015
ีus3,sompop,ข้อมูล x3,11/10/2015
us4,apichat,ข้อมูล x4,12/10/2015
ตารางที่ 2
ID2,Name2,Data2,Date2
us1,narongchai,ข้อมูล y1,09/02/2015
us2,somchai,ข้อมูล y2,10/10/2015
us4,apichat,ข้อมูล y4,12/10/2015
*** ที่ผมมีปัญหาคือ ถ้า ในตาราง ID1 กับตาราง ID2 มีข้อมูลในฟิลด์ ID เหมือนกัน จะสามารถดึงข้อมูล 2 ตารางมาเปรียบเทียบกันได้ แต่ถ้าฟิลด์ไหนที่ ID1 มี แต่ ID2 ไม่มี มันจะเกิด error น่ะครับ ผมสมควรแก้อย่างไรดี
ตัวอย่าง ผมต้องการนำข้อมูล ตารางที่ 1 กับ 2 มาเปรียบเทียบกัน
Code
string str = "select ID1,Date1,Data1 from table0 where Date1='" + dateTimePicker1.Value.ToString("dd/MM/yyyy") + "'";
da = new OleDbDataAdapter(str, conn);
da.Fill(dt);
conn.Close();
for (int i = 0; i < dt.Rows.Count; i++)
{
id1.Add(dt.Rows[i]["ID1"].ToString());
date1.Add(dt.Rows[i]["Date1"].ToString());
data1.Add(dt.Rows[i]["Data1"].ToString());
// ปัญหาเริ่มจากตรงนี้ครับ คือ id1[i] มันมีข้อมูล แต่ในตาราง id2 มันไม่มีน่ะครับ คือ ดึงข้อมูล us3 มาแต่ตาราง 2 ไม่มี us3 ผมควรเขียนโค้ดดัก อย่างไรให้มันข้ามหรือดัก id1 ที่ในตาราง 2 ไม่มีข้อมูลดีอ่ะครับ
Code
conn.Open();
string str2 = "select ID2,Date2,Data2 from table where ID2='" + id1[i] + "'";
da2 = new OleDbDataAdapter(str2, conn);
da2.Fill(dt2);
conn.Close();
id2.Add(dt.Rows[0]["ID2"].ToString());
date2.Add(dt.Rows[0]["Date2"].ToString());
data2.Add(dt.Rows[0]["Data2"].ToString());
จากนั้นนำ data1 กับ data 2 มาเทียบกัน
รบกวนสอบถามด้วยครับ ขอบคุณมากๆครับสำหรับทุกคอมเม้นต์Tag : .NET, Ms Access, Ms SQL Server 2012, Web (ASP.NET), C#, VS 2012 (.NET 4.x)
Date :
2017-02-21 08:52:05
By :
melonfeather
View :
753
Reply :
3
พื้นฐานคับ => SQL Tutorial
Date :
2017-02-21 09:25:16
By :
mr.win
ขอบคุณครับ
Date :
2017-02-21 10:28:23
By :
melonfeather
Load balance : Server 02