การ select ตาราง แบบมีเงื่อนไข

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา การ select ตาราง แบบมีเงื่อนไข

การ select ตาราง แบบมีเงื่อนไข

 รบกวนสอบถามพี่นิคครับ

คือผมต้องกา select ตารางแบบมีเงื่อนไขตามนี้ครับ

 

ในตารางแรกผม มีการเก็บ userid  และข้อมูลของสมาชิก

ตารางที่สองเป็นตาราง  เก็บเนื้อหา

 

ทีนี้ ผมอยาก select  ตารางที่ userid = 1 ยังไม่ได้อ่าน อ่ะครับ

ผมต้องทำอย่างไรดีครับ ผมสับสนมาก  เพราะเนื้อหานึง คนอ่านเป็นพันๆ มันจะselect ยังไง

 

หรือต้องใช้วิธีการแบบไหน รบกวนสอบถามให้พี่นิคช่วยอธิบายให้ทีครับ  ขอบคุณมากๆครับ



Supinyo 14-12-2010 17:50:26

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1

" ผมอยาก select  ตารางที่ userid = 1 ยังไม่ได้อ่าน 
ยังไงลองถามมาใหม่ดูน่ะ



Ninenik 14-12-2010
 ความคิดเห็นที่ 2

ก็คือว่า 

ผมอยากเลือกที่ เนื่อหา จากตาราง content โดยอ่างอิงจาก userid ที่ login เข้าไป 

ถ้า userid = 1 ก็ให้เลือกเนื้อหาที่ userid = 1 ยังไม่ได้อ่านครับ อันไหนอ่านแล้วก็ไม่ต้องเลือก



Supinyo 15-12-2010 00:03
 ความคิดเห็นที่ 3

เท่าที่ดูแล้ว คำถามกว้างน่ะ
จะขึ้นอยู่กับว่าเราเก็บข้อมูล อ่านแล้ว หรือ ยังไม่อ่าน ในรูปแบบไหน
คิดว่าการกำหนดเงื่อนไข น่าจะขึ้นกับโครงสร้างข้อมูลที่เราเก็บ

คำถามนี้ไม่มีคอบ ลองพยายามดู

ปล. ถ้าเราต้องการเก็บข้อมูลว่าสมาชิกคนไหน อ่าน หรือยังไม่อ่านเนื้อหาไหน ลองดูแนวทางต่อไปนี้ดู
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']
 

$sql="SELECT * FROM content WHERE content_userid NOT LIKE '%#".$_SESSION['userid']."|%' ";

 



Ninenik 15-12-2010
 ความคิดเห็นที่ 4

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



Supinyo 15-12-2010 14:33
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ