กระทู้เก่าบอร์ด อ.Yeadram
1,804 3
URL.หัวข้อ /
URL
รวมชื่อให้อยูในฟิลด์เดียวกัน หรือบรรทัดเดียวกัน
เรียนถาม อ.Yeadram และท่านผู้รู้ทุกท่าน
table ผมมี 2 ฟิลด์ Name, Company
Name Company
Mr.AA ComA
Mr.BB ComA
Mr.CC ComB
Mr.DD ComB
Mr.EE ComC
Mr.FF ComC
Mr.GG ComD
Mr.HH ComD
ต้องการแสดงใน Query, หรือใน Form หรือ Report แบบนี้ครับ
Field1 Field2
ComA Mr.AA, Mr.BB
ComB Mr.CC, Mr.DD
ComC Mr.EE, Mr.FF
ComD Mr.GG, Mr.HH
ขอบพระคุณอย่างสูงครับ
table ผมมี 2 ฟิลด์ Name, Company
Name Company
Mr.AA ComA
Mr.BB ComA
Mr.CC ComB
Mr.DD ComB
Mr.EE ComC
Mr.FF ComC
Mr.GG ComD
Mr.HH ComD
ต้องการแสดงใน Query, หรือใน Form หรือ Report แบบนี้ครับ
Field1 Field2
ComA Mr.AA, Mr.BB
ComB Mr.CC, Mr.DD
ComC Mr.EE, Mr.FF
ComD Mr.GG, Mr.HH
ขอบพระคุณอย่างสูงครับ
3 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R02268
เอาฟังก์ชั่นนี้ไปไว้ในโมดูล
แล้วเอาคิวรี่นี้ไปใช้ครับ
ได้แบบ Real Time แล้วครับ อิอิ แต่ว่ามันจะหนักมากๆ ถ้าเจอข้อมูลเยอะๆ
Public Function CpName(ByVal Comp As String) As String
Dim sq As String
Dim Rs As New ADODB.Recordset
Dim Conn As New ADODB.Connection
Set Conn = CurrentProject.Connection
CpName = ""
sq = "Select [Name] From Table2 where Company = '" & Comp & "';"
Rs.Open sq, Conn, 1
If Rs.EOF And Rs.BOF Then GoTo Endfunction
Do While Not Rs.EOF
CpName = CpName & Rs(0) & ", "
Rs.MoveNext
Loop
CpName = Left(CpName, Len(CpName) - 2)
Endfunction:
If Rs.State <> 0 Then Rs.Close
Set Rs = Nothing
If Conn.State <> 0 Then Conn.Close
Set Conn = Nothing
End Function
แล้วเอาคิวรี่นี้ไปใช้ครับ
SELECT Company AS Field1, CpName([Company]) AS Field2
FROM Table2
GROUP BY Company, CpName([Company]);
ได้แบบ Real Time แล้วครับ อิอิ แต่ว่ามันจะหนักมากๆ ถ้าเจอข้อมูลเยอะๆ
3 @R02272
ขอบคุณ อ.yeadram มากครับ
Time: 0.3112s
ข้อดีของมันคือ realtime แม้ข้อมูลจะถูกแก้ไขปรับปรุงเมื่อไหร่ เราก็มั่นใจได้ว่า ผลลัพธ์มันจะออกมาถูกต้องแน่นอน
แต่ถ้า งูๆ ปลาๆ อย่างผม ผมคงต้องเขียนเป็นฟังก์ชั่นเฉพาะ ขึ้นมาเพื่อใช้งาน ให้วนลูปนำข้อมูลที่จัดเรียงแล้วไปลงในตารางพัก แหละครับ
ข้อเสียคือ ตรงกันข้ามกับข้อดีของการเขียน SQL นั่นแหละครับ กล่าวคือ เมื่ออยากได้ข้อมูลที่ถูกต้องแม่นยำครั้งใด ก็ต้องสั่งรันฟังก์ชั่นซ้ำทุกที
อืมม หรือว่ารออีกหน่อย อาจจะมีคนหาทางทำได้โดย sql มาบอกก็ได้ครับ