ฉันมีตารางดังภาพด้านล่าง
ชื่อตาราง - คุณสมบัติ
|runId|listingId|listingName 1 123 abc 1 234 def 2 123 abcd 2 567 ghi 2 234 defg
ดังที่คุณเห็นในโค้ดด้านบน มี runId และมี List Id ฉันกำลังพยายามดึงข้อมูลสำหรับ runId เฉพาะซึ่งเป็นรายการใหม่ที่เพิ่ม (ในกรณีนี้สำหรับ runId 2 แถวที่ 4 พร้อมรหัสรายการ 567 ) และรหัสรายการใดที่อัปเดต (ในกรณีนี้คือแถว 3 และแถว 5 ด้วย รายชื่อId 123 และ 234 ตามลำดับ)
ฉันกำลังลองเข้าร่วมด้วยตนเองและใช้งานได้ดีสำหรับการอัปเดตใหม่ แต่การเพิ่มใหม่ทำให้ฉันมีปัญหา
SELECT p1.* FROM property p1 INNER JOIN property p2 ON p1.listingid = p2.listingid WHERE p1.runid=456 AND p2.runid!=456
ข้อความค้นหาข้างต้นให้บันทึกที่อัปเดตที่ถูกต้องในตารางแก่ฉัน แต่ฉันไม่สามารถหารายการใหม่ได้ ฉันใช้ p1.listingid != p2.listingId การรวมภายนอกด้านซ้ายยังคงใช้งานไม่ได้
sqlserver
,mysql
...ฯลฯ รวมถึงพูดถึงเวอร์ชันของ DBMS ของคุณด้วย - person DarkRob   schedule 05.09.2019