กระทู้เก่าบอร์ด อ.Yeadram
3,574 15
URL.หัวข้อ /
URL
จัดการข้อมูลนี้อย่างไรครับ
ต้องการสรุปใบเสร็จครับ
15 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R15221
รูปน่าจะกลายเป็นรูปอื่นไปแล้วนะครับ
ดูจากข้อมูล เข้าใจอยากมากเลยครับ
คำถาม
จากข้อมูลเดิม
12/2/56 16158 10101 7-9
12/2/56 16158 10102 10-10
12/2/56 16158 10101 11-12
12/2/56 16158 10102 13-13
12/2/56 16158 10101 14-17
แล้วถ้าเปลี่ยนการเรียงเรคคอร์ดเป็นแบบนี้ ผลที่ต้องการก็จะเป็นดังนี้หรือเปล่า
12/2/56 16158 10101 7-12
12/2/56 16158 10102 10-13
12/2/56 16158 10101 14-17
แล้วเลข 16158 มันมีผลยังไงกับการเรียงหรือการนับหรือไม่ คือดูคำถามแล้วสับสนครับ ถามใหม่ดีกว่าครับขอละเอียดหน่อยครับ งง มาก
ดูจากข้อมูล เข้าใจอยากมากเลยครับ
คำถาม
จากข้อมูลเดิม
12/2/56 16158 10101 7-9
12/2/56 16158 10102 10-10
12/2/56 16158 10101 11-12
12/2/56 16158 10102 13-13
12/2/56 16158 10101 14-17
แล้วถ้าเปลี่ยนการเรียงเรคคอร์ดเป็นแบบนี้ ผลที่ต้องการก็จะเป็นดังนี้หรือเปล่า
12/2/56 16158 10101 7-12
12/2/56 16158 10102 10-13
12/2/56 16158 10101 14-17
แล้วเลข 16158 มันมีผลยังไงกับการเรียงหรือการนับหรือไม่ คือดูคำถามแล้วสับสนครับ ถามใหม่ดีกว่าครับขอละเอียดหน่อยครับ งง มาก
3 @R15230
จากตารางเดิมข้อมูลเป็นแบบนี้ครับ
วันที่ออกใบเสร็จ เล่มที่ใบเสร็จ ประเภทรายรับ เลขที่ใบเสร็จ
12/12/56 16158 10101 7
12/12/56 16158 10101 8
12/12/56 16158 10101 9
12/12/56 16158 10102 10
12/12/56 16158 10101 11
12/12/56 16158 10101 12
12/12/56 16158 10102 13
12/12/56 16158 10101 14
12/12/56 16158 10101 15
12/12/56 16158 10101 16
12/12/56 16158 10101 14
สิ่งที่ต้องการครับ ตารางที่ 1 สรุปผลออกมาเป็นแบบนี้ครับ
วันที่รับ เลขที่ใบเสร็จ ประเภทรายรับ เลขที่
12/2/56 16158 10101 7-9
12/2/56 16158 10102 10-10
12/2/56 16158 10101 11-12
12/2/56 16158 10102 13-13
12/2/56 16158 10101 14-17
หรือ
12/2/56 16158 10101 7-9,11-12,14-17
12/2/56 16158 10102 10,13
วันที่ออกใบเสร็จ เล่มที่ใบเสร็จ ประเภทรายรับ เลขที่ใบเสร็จ
12/12/56 16158 10101 7
12/12/56 16158 10101 8
12/12/56 16158 10101 9
12/12/56 16158 10102 10
12/12/56 16158 10101 11
12/12/56 16158 10101 12
12/12/56 16158 10102 13
12/12/56 16158 10101 14
12/12/56 16158 10101 15
12/12/56 16158 10101 16
12/12/56 16158 10101 14
สิ่งที่ต้องการครับ ตารางที่ 1 สรุปผลออกมาเป็นแบบนี้ครับ
วันที่รับ เลขที่ใบเสร็จ ประเภทรายรับ เลขที่
12/2/56 16158 10101 7-9
12/2/56 16158 10102 10-10
12/2/56 16158 10101 11-12
12/2/56 16158 10102 13-13
12/2/56 16158 10101 14-17
หรือ
12/2/56 16158 10101 7-9,11-12,14-17
12/2/56 16158 10102 10,13
4 @R15233
อธิบายแนวคิดให้หน่อยนะครับ ผมดูแล้วเรคคอร์ดข้อมูลเหมือนกันหมด แต่จะให้แบ่ง เลขที่ เป็นช่วงๆ จะยึดอะไรเป็นตักกะในการแยกข้อมูลครับ
5 @R15234
ลองนั่งเขียนคิวรี่ดู ได้แต่อย่างนี้อ่ะครับ
วันที่รับ เลขที่ใบเสร็จ ประเภทรายรับ เลขที่
12/2/56 16158 10101 7-9
12/2/56 16158 10102 10-10
12/2/56 16158 10101 7-12
12/2/56 16158 10102 10-13
12/2/56 16158 10101 7-17
ยังคิดไม่ออกว่าจะหาค่า Min ของ เลขที่ใบเสร็จ เป็นช่วงๆ ในขณะที่ฟิลด์อื่นๆมีค่าเหมือนกันหมดได้อย่างไร เราจะอ้างค่า Min อีกช่วงได้อย่างไร
วันที่รับ เลขที่ใบเสร็จ ประเภทรายรับ เลขที่
12/2/56 16158 10101 7-9
12/2/56 16158 10102 10-10
12/2/56 16158 10101 7-12
12/2/56 16158 10102 10-13
12/2/56 16158 10101 7-17
ยังคิดไม่ออกว่าจะหาค่า Min ของ เลขที่ใบเสร็จ เป็นช่วงๆ ในขณะที่ฟิลด์อื่นๆมีค่าเหมือนกันหมดได้อย่างไร เราจะอ้างค่า Min อีกช่วงได้อย่างไร
6 @R15241
เขียน vba วนลูปเอา ง่ายกว่า ใช้ query เยอะเลยครับ
7 @R15242
ทำเป็น Query ให้ดูครับ
เงื่อนไข: เลขที่ใบเสร็จต้องเป็นเลข running ต่อเนื่องกันเท่านั้น!
สมมุติว่าตารางของคุณชื่อว่า t_Bill
1. สร้าง query ชื่อ Bill_Min
Select วันที่ออกใบเสร็จ, เล่มที่ใบเสร็จ, ประเภทรายรับ, เลขที่ใบเสร็จ
From t_Bill AS b1
Where เลขที่ใบเสร็จ =
(
Select Max(เลขที่ใบเสร็จ) +1
From t_Bill as b2
Where b2.ประเภทรายรับ <> b1.ประเภทรายรับ
And b2.เลขที่ใบเสร็จ < b1.เลขที่ใบเสร็จ
)
2. สร้าง query ชื่อ Bill_All_Min
(
Select วันที่ออกใบเสร็จ, เล่มที่ใบเสร็จ, ประเภทรายรับ, เลขที่ใบเสร็จ
From t_Bill as a1
Where เลขที่ใบเสร็จ =
(
Select Min(เลขที่ใบเสร็จ)
From t_Bill as a2
)
)
Union
(
Select * From Bill_Min
)
3. สร้าง query ชื่อ Bill_All_Max
(
Select * From Bill_Min
)
Union
(
Select วันที่ออกใบเสร็จ, เล่มที่ใบเสร็จ, 99999, เลขที่ใบเสร็จ+1
From
(
Select *
From t_Bill AS c1
Where เลขที่ใบเสร็จ =
(
Select Max(เลขที่ใบเสร็จ)
From t_Bill as c2
)
)
)
4. สร้าง query ขื่อ Bill_Final
Select วันที่ออกใบเสร็จ, เล่มที่ใบเสร็จ, ประเภทรายรับ, เลขที่ใบเสร็จ & "-" &
(Select Min(เลขที่ใบเสร็จ) - 1
From
Bill_All_Max As amax
Where amax.ประเภทรายรับ <> amin.ประเภทรายรับ
And amax.เลขที่ใบเสร็จ > amin.เลขที่ใบเสร็จ
) As เลขที่
From Bill_All_Min AS amin
Order By เลขที่ใบเสร็จ
Open Query Bill_Final ครับ
เงื่อนไข: เลขที่ใบเสร็จต้องเป็นเลข running ต่อเนื่องกันเท่านั้น!
สมมุติว่าตารางของคุณชื่อว่า t_Bill
1. สร้าง query ชื่อ Bill_Min
Select วันที่ออกใบเสร็จ, เล่มที่ใบเสร็จ, ประเภทรายรับ, เลขที่ใบเสร็จ
From t_Bill AS b1
Where เลขที่ใบเสร็จ =
(
Select Max(เลขที่ใบเสร็จ) +1
From t_Bill as b2
Where b2.ประเภทรายรับ <> b1.ประเภทรายรับ
And b2.เลขที่ใบเสร็จ < b1.เลขที่ใบเสร็จ
)
2. สร้าง query ชื่อ Bill_All_Min
(
Select วันที่ออกใบเสร็จ, เล่มที่ใบเสร็จ, ประเภทรายรับ, เลขที่ใบเสร็จ
From t_Bill as a1
Where เลขที่ใบเสร็จ =
(
Select Min(เลขที่ใบเสร็จ)
From t_Bill as a2
)
)
Union
(
Select * From Bill_Min
)
3. สร้าง query ชื่อ Bill_All_Max
(
Select * From Bill_Min
)
Union
(
Select วันที่ออกใบเสร็จ, เล่มที่ใบเสร็จ, 99999, เลขที่ใบเสร็จ+1
From
(
Select *
From t_Bill AS c1
Where เลขที่ใบเสร็จ =
(
Select Max(เลขที่ใบเสร็จ)
From t_Bill as c2
)
)
)
4. สร้าง query ขื่อ Bill_Final
Select วันที่ออกใบเสร็จ, เล่มที่ใบเสร็จ, ประเภทรายรับ, เลขที่ใบเสร็จ & "-" &
(Select Min(เลขที่ใบเสร็จ) - 1
From
Bill_All_Max As amax
Where amax.ประเภทรายรับ <> amin.ประเภทรายรับ
And amax.เลขที่ใบเสร็จ > amin.เลขที่ใบเสร็จ
) As เลขที่
From Bill_All_Min AS amin
Order By เลขที่ใบเสร็จ
Open Query Bill_Final ครับ
8 @R15244
โห! เยี่ยมเลยครับผม
9 @R15249
ทำไม่ได้เนื่องจากความรู้น้อยครับ มีตัวอย่างคิวรี่ที่ทำเสร็จแล้วเป็นตัวอย่างบ้านไหมครับ
10 @R15251
@ คุณนิคม
จากข้อ 1-4 ที่ อ.PichaiTC เขียนไว้ คือให้คุณ สร้างคิวรี่ขึ้นมาใหม่ ข้อละ 1 คิวรี่ ไม่ต้อง Add ตารางใดๆทั้งสิ้น เข้าไปที่มุมมอง SQL แล้ว Copy โค๊ดทีละข้อ ใส่ลงไปที่ละคิวรี่ ตั้งชื่อตามที่เขียนไว้ เช่น คิวรี่ 1 ชื่อ Bill_Min คิวรี่ 2 ชื่อ Bill_All_Min ...
และในโค๊ดจะใช้ชื่อตารางว่า t_Bill ให้เปลี่ยนทุกข้อความที่เขียนว่า t_Bill เป็นชื่อตารางของคุณ
สุดท้ายเมื่อทำครบทั้ง 4 คิวรี่แล้ว เรียกที่คิวรี่ชื่อ Bill_Final อันเดียวพอ จะเห็นการสรุปข้อมูลที่คุุณต้องการ ประมาณนี้ครับ
จากข้อ 1-4 ที่ อ.PichaiTC เขียนไว้ คือให้คุณ สร้างคิวรี่ขึ้นมาใหม่ ข้อละ 1 คิวรี่ ไม่ต้อง Add ตารางใดๆทั้งสิ้น เข้าไปที่มุมมอง SQL แล้ว Copy โค๊ดทีละข้อ ใส่ลงไปที่ละคิวรี่ ตั้งชื่อตามที่เขียนไว้ เช่น คิวรี่ 1 ชื่อ Bill_Min คิวรี่ 2 ชื่อ Bill_All_Min ...
และในโค๊ดจะใช้ชื่อตารางว่า t_Bill ให้เปลี่ยนทุกข้อความที่เขียนว่า t_Bill เป็นชื่อตารางของคุณ
สุดท้ายเมื่อทำครบทั้ง 4 คิวรี่แล้ว เรียกที่คิวรี่ชื่อ Bill_Final อันเดียวพอ จะเห็นการสรุปข้อมูลที่คุุณต้องการ ประมาณนี้ครับ
11 @R15253
ลองทำตามคำแนะนำแล้วครับ แล้วลองเพิ่มข้อมูลในตาราง t_Bill
วันที่ออกใบเสร็จ เล่มที่ใบเสร็จ ประเภทรายรับ เลขที่ใบเสร็จ
5/2/2556 16158 10101 1
5/2/2556 16158 10101 2
5/2/2556 16158 10101 3
7/2/2556 16158 10101 4
11/2/2556 16158 10101 5
11/2/2556 16158 10102 6
12/2/2556 16158 10101 7
12/2/2556 16158 10101 8
12/2/2556 16158 10102 9
12/2/2556 16158 10101 10
12/2/2556 16158 10101 11
13/2/2556 16157 10101 1
13/2/2556 16157 10101 2
13/2/2556 16157 10101 3
13/2/2556 16158 10102 12
13/2/2556 16158 10102 13
13/2/2556 16158 10102 14
ผลที่ควรจะได้คือ
5/2/2556 16158 10101 1-3
7/2/2556 16158 10101 4-4
11/2/2556 16158 10101 5-5
11/2/2556 16158 10102 6-6
12/2/2556 16158 10101 7-8
12/2/2556 16158 10102 9-9
12/2/2556 16158 10101 10-11
13/2/2556 16157 10101 1-3
13/2/2556 16158 10102 12-13
ผลที่ได้จาก Query
วันที่ออกใบเสร็จ เล่มที่ใบเสร็จ ประเภทรายรับ เลขที่ใบเสร็จ
13/2/2556 16157 10101 1-5
5/2/2556 16158 10101 1-5
11/2/2556 16158 10102 6-6
12/2/2556 16158 10101 7-8
12/2/2556 16158 10102 9-9
12/2/2556 16158 10101 10-11
13/2/2556 16158 10102 12-14
หมายเหตุ ที่ทำงานมีใบเสร็จมากกว่า 1 เล่ม และมี ประเภทรายรับมากว่า 1 ประเภท
วันที่ออกใบเสร็จ เล่มที่ใบเสร็จ ประเภทรายรับ เลขที่ใบเสร็จ
5/2/2556 16158 10101 1
5/2/2556 16158 10101 2
5/2/2556 16158 10101 3
7/2/2556 16158 10101 4
11/2/2556 16158 10101 5
11/2/2556 16158 10102 6
12/2/2556 16158 10101 7
12/2/2556 16158 10101 8
12/2/2556 16158 10102 9
12/2/2556 16158 10101 10
12/2/2556 16158 10101 11
13/2/2556 16157 10101 1
13/2/2556 16157 10101 2
13/2/2556 16157 10101 3
13/2/2556 16158 10102 12
13/2/2556 16158 10102 13
13/2/2556 16158 10102 14
ผลที่ควรจะได้คือ
5/2/2556 16158 10101 1-3
7/2/2556 16158 10101 4-4
11/2/2556 16158 10101 5-5
11/2/2556 16158 10102 6-6
12/2/2556 16158 10101 7-8
12/2/2556 16158 10102 9-9
12/2/2556 16158 10101 10-11
13/2/2556 16157 10101 1-3
13/2/2556 16158 10102 12-13
ผลที่ได้จาก Query
วันที่ออกใบเสร็จ เล่มที่ใบเสร็จ ประเภทรายรับ เลขที่ใบเสร็จ
13/2/2556 16157 10101 1-5
5/2/2556 16158 10101 1-5
11/2/2556 16158 10102 6-6
12/2/2556 16158 10101 7-8
12/2/2556 16158 10102 9-9
12/2/2556 16158 10101 10-11
13/2/2556 16158 10102 12-14
หมายเหตุ ที่ทำงานมีใบเสร็จมากกว่า 1 เล่ม และมี ประเภทรายรับมากว่า 1 ประเภท
12 @R15254
แจ้งข้อมูลมาช้าไปหน่อยนะครับ
ผมใช้เวลา 3 ชั่วโมง กว่าจะเขียนให้ได้ผลสำเร็จ
คงต้องรอผมมีเวลาว่างก่อนนะครับ
แต่ที่จริง query ที่ให้ไปก็ถูกทางอยู่แล้ว
ใครอยากลองคิดต่อ ก็ลองดู แล้วเอาผลมาให้ดูหน่อยนะครับ
ผมใช้เวลา 3 ชั่วโมง กว่าจะเขียนให้ได้ผลสำเร็จ
คงต้องรอผมมีเวลาว่างก่อนนะครับ
แต่ที่จริง query ที่ให้ไปก็ถูกทางอยู่แล้ว
ใครอยากลองคิดต่อ ก็ลองดู แล้วเอาผลมาให้ดูหน่อยนะครับ
13 @R15263
คุณนิคมครับ ผมบอกเลยนะครับว่านี่เป็นปัญหาของการที่คุณให้ข้อมูลไม่ครบอ่ะครับ และไม่ได้บอกแนวคิดในความต้องการสรุปการแบ่งข้อมูล ทำให้การเขียนคิวรี่เงื่อนไขตกไป เมื่อเทียบกับข้อมูลใหม่ที่คุณให้มา จริงๆผู้ถามควรให้ข้อมูลมากหน่อยนะครับ พยายามนึกเรียบเรียงหน่อยนะครับ เห็น อ.PichaiTC เขียนไว้ว่าใช้เวลา 3 ชั่วโมงแล้ว ผมบอกตรงๆว่าผมยังรู้สึกเหนื่อยและเกรงใจแทนเลยครับ ขอบ่นหน่อยก่อนเข้าเรื่อง
คิวรี่ที่ 2 ที่ชื่อ Bill_All_Min เปลี่ยนเป็น
(SELECT [วันที่ออกใบเสร็จ], [เล่มที่ใบเสร็จ], [ประเภทรายรับ], [เลขทีใบเสร็จ]
FROM t_Bill AS a1
WHERE [เลขทีใบเสร็จ] = (SELECT Min([เลขทีใบเสร็จ]) FROM t_Bill AS a2
WHERE a2.[เล่มที่ใบเสร็จ] = a1.[เล่มที่ใบเสร็จ] AND a2.[วันที่ออกใบเสร็จ] = a1.[วันที่ออกใบเสร็จ]))
UNION (SELECT * FROM Bill_Min);
คิวรี่ที่ 3 ที่ชื่อ Bill_All_Max เปลี่ยนเป็น
(SELECT * FROM Bill_Min)
UNION (SELECT [วันที่ออกใบเสร็จ], [เล่มที่ใบเสร็จ], (SELECT Max([ประเภทรายรับ]) + 1 FROM t_Bill), [เลขทีใบเสร็จ] + 1
FROM (SELECT * FROM t_Bill AS c1
WHERE [เลขทีใบเสร็จ] = (SELECT Max([เลขทีใบเสร็จ])
FROM t_Bill AS c2
WHERE c2.[เล่มที่ใบเสร็จ] = c1.[เล่มที่ใบเสร็จ]
AND c2.[วันที่ออกใบเสร็จ] = c1.[วันที่ออกใบเสร็จ])));
คิวรี่ที่ 4 ที่ชื่อ Bill_Final เปลี่ยนเป็น
SELECT amin.[วันที่ออกใบเสร็จ], amin.[เล่มที่ใบเสร็จ], amin.[ประเภทรายรับ], [เลขทีใบเสร็จ] & "-" &
(SELECT Min([เลขทีใบเสร็จ]) - 1 FROM Bill_All_Max AS amax
WHERE amax.[ประเภทรายรับ] <> amin.[ประเภทรายรับ]
AND amax.[เลขทีใบเสร็จ] > amin.[เลขทีใบเสร็จ]) AS [เลขที่ Min-Max]
FROM Bill_All_Min AS amin
ORDER BY amin.[วันที่ออกใบเสร็จ], amin.[เลขทีใบเสร็จ];
คือการเพิ่มเงื่อนไขฟิลด์ วันที่ และ เล่มที่ จะต้องเท่ากันดัวย
ผลลัพธ์
5/2/2556 16158 10101 1-3
7/2/2556 16158 10101 4-4
11/2/2556 16158 10101 5-5
11/2/2556 16158 10102 6-6
12/2/2556 16158 10101 7-8
12/2/2556 16158 10102 9-9
12/2/2556 16158 10101 10-11
13/2/2556 16157 10101 1-3
13/2/2556 16158 10102 12-14
- ผลที่ควรจะได้ ของคุณ บรรทัดสุดท้ายต้องเป็น 12-14 นะครับ ไม่ใช่ 12-13 จากข้อมูล ตารางที่คุณเขียนมา
ปล. ขออนุญาติอาจารย์ ตอบแทนนะครับ
คิวรี่ที่ 2 ที่ชื่อ Bill_All_Min เปลี่ยนเป็น
(SELECT [วันที่ออกใบเสร็จ], [เล่มที่ใบเสร็จ], [ประเภทรายรับ], [เลขทีใบเสร็จ]
FROM t_Bill AS a1
WHERE [เลขทีใบเสร็จ] = (SELECT Min([เลขทีใบเสร็จ]) FROM t_Bill AS a2
WHERE a2.[เล่มที่ใบเสร็จ] = a1.[เล่มที่ใบเสร็จ] AND a2.[วันที่ออกใบเสร็จ] = a1.[วันที่ออกใบเสร็จ]))
UNION (SELECT * FROM Bill_Min);
คิวรี่ที่ 3 ที่ชื่อ Bill_All_Max เปลี่ยนเป็น
(SELECT * FROM Bill_Min)
UNION (SELECT [วันที่ออกใบเสร็จ], [เล่มที่ใบเสร็จ], (SELECT Max([ประเภทรายรับ]) + 1 FROM t_Bill), [เลขทีใบเสร็จ] + 1
FROM (SELECT * FROM t_Bill AS c1
WHERE [เลขทีใบเสร็จ] = (SELECT Max([เลขทีใบเสร็จ])
FROM t_Bill AS c2
WHERE c2.[เล่มที่ใบเสร็จ] = c1.[เล่มที่ใบเสร็จ]
AND c2.[วันที่ออกใบเสร็จ] = c1.[วันที่ออกใบเสร็จ])));
คิวรี่ที่ 4 ที่ชื่อ Bill_Final เปลี่ยนเป็น
SELECT amin.[วันที่ออกใบเสร็จ], amin.[เล่มที่ใบเสร็จ], amin.[ประเภทรายรับ], [เลขทีใบเสร็จ] & "-" &
(SELECT Min([เลขทีใบเสร็จ]) - 1 FROM Bill_All_Max AS amax
WHERE amax.[ประเภทรายรับ] <> amin.[ประเภทรายรับ]
AND amax.[เลขทีใบเสร็จ] > amin.[เลขทีใบเสร็จ]) AS [เลขที่ Min-Max]
FROM Bill_All_Min AS amin
ORDER BY amin.[วันที่ออกใบเสร็จ], amin.[เลขทีใบเสร็จ];
คือการเพิ่มเงื่อนไขฟิลด์ วันที่ และ เล่มที่ จะต้องเท่ากันดัวย
ผลลัพธ์
5/2/2556 16158 10101 1-3
7/2/2556 16158 10101 4-4
11/2/2556 16158 10101 5-5
11/2/2556 16158 10102 6-6
12/2/2556 16158 10101 7-8
12/2/2556 16158 10102 9-9
12/2/2556 16158 10101 10-11
13/2/2556 16157 10101 1-3
13/2/2556 16158 10102 12-14
- ผลที่ควรจะได้ ของคุณ บรรทัดสุดท้ายต้องเป็น 12-14 นะครับ ไม่ใช่ 12-13 จากข้อมูล ตารางที่คุณเขียนมา
ปล. ขออนุญาติอาจารย์ ตอบแทนนะครับ
14 @R15276
ขอบคุณครับ โอกาสหน้าจะอธิบายให้ละเอียดมากกว่าเดิมครับ
ปกติทำได้แค่ คิวรี่ เบื้องตน แต่เขียน SQL ไม่เป็นครับ แล้วถ้าอยากเขียน SQL ได้ ต้องเริ่มต้นอย่างไรครับ อ่านที่เขียนมาให้ยังไม่เข้าใจเลยครับ ได้แต่ Copy ไปทำตามเองครับ
ปกติทำได้แค่ คิวรี่ เบื้องตน แต่เขียน SQL ไม่เป็นครับ แล้วถ้าอยากเขียน SQL ได้ ต้องเริ่มต้นอย่างไรครับ อ่านที่เขียนมาให้ยังไม่เข้าใจเลยครับ ได้แต่ Copy ไปทำตามเองครับ
15 @R15286
ผมเห็นตามร้านหนังสือ รู้สึกจะมีที่เขียนมาเน้นเฉพาะเรื่องของ SQL หรือ VBA เป็นหลัก ลองซื้อมาอ่านดูครับ หรือไม่ก็ตามเว็บทั่วไป ศึกษาเรื่องพื้นฐานคำสั่งหลักๆก่อนครับ ดูว่ามีรูปแบบการเขียนแต่ละคำสั่งอย่างไร
ลองดูที่นี่ก็ได้ครับ
http://www.w3schools.com/sql/sql_syntax.asp
เป็นตัวอย่างแบบพื้นฐานเลย แต่เว็บนี้เค้าจะเขียนรวมระหว่าง SQL Server / MS Access / My SQL / Oracle โดยคำสั่งไหนใช้ไม่เหมือนกันก็จะบอกไว้ แต่หลักๆ 80-90 เปอร์เซ็น ใช้กับ MS Access ได้ครับ
ลองดูที่นี่ก็ได้ครับ
http://www.w3schools.com/sql/sql_syntax.asp
เป็นตัวอย่างแบบพื้นฐานเลย แต่เว็บนี้เค้าจะเขียนรวมระหว่าง SQL Server / MS Access / My SQL / Oracle โดยคำสั่งไหนใช้ไม่เหมือนกันก็จะบอกไว้ แต่หลักๆ 80-90 เปอร์เซ็น ใช้กับ MS Access ได้ครับ
Time: 0.4511s
12/2/56 16158 10101 7-9
12/2/56 16158 10102 10-10
12/2/56 16158 10101 11-12
12/2/56 16158 10102 13-13
12/2/56 16158 10101 14-17
หรือ
12/2/56 16158 10101 7-9,11-12,14-17
12/2/56 16158 10102 10,13
ลองใช้ค่า min max แล้วข้อมูลซ้ำ