คิวรี่จาก 2 ตารางแล้วข้อมูลที่ได้ออกมามันเกินคับ คือ ตอนนี้ผมมีอยู่ 2 ตารางคับซึ่งเป็นฐานข้อมูล Acc
คือ ตอนนี้ผมมีอยู่ 2 ตารางคับซึ่งเป็นฐานข้อมูล Acc โดย
ตารางที่ 1 ประกอบด้วย:Name_expenses,How_much_ex,Date_ex,ID_date_ex
ตารางที่ 2 ประกอบด้วย:Name_income,How_much,Date_income,ID_date
Code (ASP)
<%
<form name="EditList" method="post" action="report_bank.asp">
<center>กรุณาใส่ เลขที่ต้องการเรียกดูรายงานงบประมาณ รายรับ-รายจ่าย ประจำเดือนนั้นๆ<br>ตัวอย่างการค้นหา เช่น ถ้าต้องการเรียกดูรายงานของเดือน ตุลาคม ให้ใส่ เลข 10 ในการค้นหา<br>
<input type="text" name="keyword" value="<%=Request.Form("keyword")%>">
<input type="submit" name="Submit" value="ค้นหา">
</center>
<%
if Request.Form("keyword")="" Then
Response.write("<br>กรุณากรอกชื่อเดือนที่ต้องการเรียกดู . . .<hr>")
Else
Set Conn=Server.Createobject("ADODB.Connection")
Conn.Open "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("Database/db_school.mdb"),"" , ""
'หรือจะใช้เป็น Conn.Open "product","",""
sql ="Select * From Tb_expenses,Tb_income where ID_date_ex like '%"&Request.Form("keyword")&"%'"
Set Rs = Conn.Execute(sql)
If Rs.EOF Then
%>
ไม่มีข้อมูลในตาราง !
<%Else%>
<table border="1">ตารางแสดงราย รายรับ-รายจ่าย ประจำเดือนที่ : <%= Rs("ID_date_ex")%>
<tr bgcolor="Silver">
<td><center>ชื่อของรายรับต่างๆ</center></td>
<td><center>จำนวนเงิน</center></td>
<td><center>ว/ด/ป(ที่ได้รับเงิน)</center></td>
</tr>
<% While Not Rs.EOF%>
<tr>
<td><%= Rs("Name_expenses")%></td>
<td><%= Rs("How_much_ex")%></td>
<td><center><%= Rs("Date_ex")%></center></td>
</tr>
<% Rs.MoveNext
Wend
Rs.Close
Conn.Close
End If
%>
</table>
<%
end if
%>
%>
แล้วที่นี้ผลที่ได้ก็เป็นดังรูปนะคับ แต่ที่จริงแล้วมันควรจะออกมาเพียง 3 แถวเท่านั้นคับเพราะตาราง expenses ที่เรียกข้อมูลนั้นพึ่งจะข้อมูลเพียง 3 แถวเท่านั้นคับ ไม่ใช่ 9 แถว ถ้าสังเกตุจะเห็นว่าข้อมูลที่ดึงมาแสดงนั้นเกินการซ้ำซ้อนกัน อยากทราบวิธีแก้ไข ด้วยคับผม ขอบพระคุณ คับ
Tag : - - - -
Date :
2009-10-04 02:26:22
By :
aciort
View :
1626
Reply :
5
จะลองดูคัผม ขอบคุณคับ
Date :
2009-10-04 10:53:59
By :
aciort
วิธีนี้ใช้ได้ผลเลยคับ แต่ผมขอแก้ไขนิดหนึงนะคับตรง WHERE t1.MemberID = t1.MemberID
t1 อันที่ 2 ต้องเป็น t2 นะคับสำหรับคนที่มีปัญหาเหมือนผมดูได้จากตรงนี้เลยคับ ขอบคุณพี่webmaster ไว้ ณ.ที่นี้ด้วยคับผม
Date :
2009-10-04 11:03:49
By :
aciort
ต้องเพิ่ม Query อีกอันนะ
sql ="Select sum(t1.How_much_ex) as How_much_ex,sum(t1.How_much) as How_much From Tb_expenses t1,Tb_income t2 where t1.ID = t2.ID AND ID_date_ex like '%"&Request.Form("keyword")&"%'"
แต่ถ้าให้ดีควรศึกษา Inner join ,Left Join , Right Join ไว้ด้วยนะครับ จะดีมากครับ
Date :
2009-10-05 08:10:23
By :
taobsd
Load balance : Server 01