การ select ตาราง แบบมีเงื่อนไข
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา การ select ตาราง แบบมีเงื่อนไข
รบกวนสอบถามพี่นิคครับ
คือผมต้องกา select ตารางแบบมีเงื่อนไขตามนี้ครับ
ในตารางแรกผม มีการเก็บ userid และข้อมูลของสมาชิก
ตารางที่สองเป็นตาราง เก็บเนื้อหา
ทีนี้ ผมอยาก select ตารางที่ userid = 1 ยังไม่ได้อ่าน อ่ะครับ
ผมต้องทำอย่างไรดีครับ ผมสับสนมาก เพราะเนื้อหานึง คนอ่านเป็นพันๆ มันจะselect ยังไง
หรือต้องใช้วิธีการแบบไหน รบกวนสอบถามให้พี่นิคช่วยอธิบายให้ทีครับ ขอบคุณมากๆครับ

คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
" ผมอยาก select ตารางที่ userid = 1 ยังไม่ได้อ่าน
ยังไงลองถามมาใหม่ดูน่ะ

ก็คือว่า
ผมอยากเลือกที่ เนื่อหา จากตาราง content โดยอ่างอิงจาก userid ที่ login เข้าไป
ถ้า userid = 1 ก็ให้เลือกเนื้อหาที่ userid = 1 ยังไม่ได้อ่านครับ อันไหนอ่านแล้วก็ไม่ต้องเลือก

เท่าที่ดูแล้ว คำถามกว้างน่ะ
จะขึ้นอยู่กับว่าเราเก็บข้อมูล อ่านแล้ว หรือ ยังไม่อ่าน ในรูปแบบไหน
คิดว่าการกำหนดเงื่อนไข น่าจะขึ้นกับโครงสร้างข้อมูลที่เราเก็บ
คำถามนี้ไม่มีคอบ ลองพยายามดู
ปล. ถ้าเราต้องการเก็บข้อมูลว่าสมาชิกคนไหน อ่าน หรือยังไม่อ่านเนื้อหาไหน ลองดูแนวทางต่อไปนี้ดู
table user
------------
user_id
user_name
table content
-----------
content_id
content_topic
content_detail
content_userid // เก็บเป็น text
ให้เราเก็บ user ที่อ่าน content ไว้ใน content_userid ในรูปแบบ #user_id|
เช่นมี user ทีมี id เท่ากับ 10,25,43 อ่าน content นี้
ก็เก็บ content_userid เท่ากับ #10|#25|#43|
ดังนั้นถ้า สมาชิกคนไหนยังไม่ได้อ่าน ก็จะไม่มี id ของสมาชิกในฟิลด์ content_userid
เราสามารถแสดง content เนื้อหาที่สมาชิกยังไม่อ่านได้ เป็น
// สมมติ session ของ userid=$_SESSION['userid']
1 | $sql = "SELECT * FROM content WHERE content_userid NOT LIKE '%#" . $_SESSION ['userid ']."|%' "; |

ขอบคุณพี่นิคมากครับ ลองเอาไปใช้แล้วได้ผลดีมากครับ
