รบกวนสอบถามคำสั่งใน Sql หากต้องการค่าที่ล่าสุดควรจะใช้คำสั่งอะไร
พอดีต้องการหา record ที่มีค่าล่าสุดคะ โดยต้องการสาม Column ได้แก่ Column 1,2,3 แต่ พอ select ข้อมูลมาพบว่ามีค่าซ้ำ 2 record เพราะว่าบรรทัดแรก ordernum ไม่มีข้อมูล บรรทัดสอง ordernum มีข้อมูล ด้วยคำสั่งนี้
Code (SQL)
SELECT TARGETLICENSEPLATEID, MAX(RECID) AS RECID, ORDERNUM
FROM dbo.table
GROUP BY TARGETLICENSEPLATEID, ORDERNUM
เลยลองดู เปลี่ยนคำสั่งใหม่โดยเพิ่มวันที่ update ล่าสุดขึ้นมาด้วย พบว่าอันที่ล่าสุดคือวันที่ 2018-10-17 06:18:14.000
Code (SQL)
SELECT TARGETLICENSEPLATEID, MAX(RECID) AS RECID, ORDERNUM,WORKCLOSEDUTCDATETIME
FROM dbo.WHSWORKTABLE
WHERE dbo.table
GROUP BY TARGETLICENSEPLATEID, ORDERNUM,WORKCLOSEDUTCDATETIME
order by TARGETLICENSEPLATEID
ถ้าอยากได้ค่าที่ล่าสุดต้องใช้คำสั่งอะไรหรอคะ หมดหนทางแล้ววววว พอดีตรวจเจอข้อมูลที่มันเป็นเลขกล่องเดียวกันซ้ำสองรายการ
ขอบคุณล่วงหน้านะคะTag : Ms SQL Server 2014
Date :
2018-10-18 10:49:09
By :
Kaew Jung
View :
929
Reply :
4
ลองประมาณนี้ดูครับ
Code (SQL)
SELECT t1.TARGETLICENSEPLATEID,t1.RECID, t1.ORDERNUM
FROM dbo.table t1 inner join
(SELECT TARGETLICENSEPLATEID, MAX(RECID) AS RECID
FROM dbo.table
GROUP BY TARGETLICENSEPLATEID) t2 on t1.TARGETLICENSEPLATEID=t2.TARGETLICENSEPLATEID
and t1.RECID=t2.RECID
Date :
2018-10-18 12:08:39
By :
fonfire
งั้นก็ลองแก้ไปใช้เวลาดูครับ
SELECT t1.TARGETLICENSEPLATEID,t1.RECID, t1.ORDERNUM
FROM dbo.table t1 inner join
(SELECT TARGETLICENSEPLATEID, MAX(_Datetime) AS _Datetime
FROM dbo.table
GROUP BY TARGETLICENSEPLATEID) t2
on t1.TARGETLICENSEPLATEID=t2.TARGETLICENSEPLATEID
and t1._Datetime=t2._Datetime
Date :
2018-10-19 10:44:24
By :
fonfire
งงครับ แค่ประยุกต์เปลี่ยนตัวแปรไปใช้ ตัวแปรที่ต้องการก้ต้องมาถาม
มันเหมือนกับไม่มีพื้นฐานอะไรเลย ไม่คิดที่จะทดลองทำด้วยตัวเอง จะให้เขาป้อนอย่างเดียวหรือไง
หากินเองไม่ได้ แล้วอยากจะสร้างงาน เฮ้อ...... เหนื่อยใจจริงๆ
กลับไปอ่าน พื้นฐานก่อนดีกว่าไหม แบบนี้ไปไหนไม่ไกลหรอกครับ เดี๋ยวก็กลับมาถามอีก
ลองทดลองเองบ้าง การ select ไม่ได้ทำให้ข้อมูลมันเสียหาย ไม่ได้ อัพเดท หรือแก้ไขอะไร
ลองเองแล้วจะจำได้เป็นอย่างดี
Date :
2018-10-19 11:06:01
By :
Chaidhanan
Load balance : Server 04