0
읽음/읽지 않음 글을 추적 할 별도의 테이블을 생성하려고합니다. MySQLi
을 사용하면 두 테이블 items
과 items_tracking
을 갖게됩니다. 페이지가 렌더링되면 테이블을 조인하고 사용자가 게시물을 읽었는지 확인합니다. 게시물 삽입시 읽음/읽지 않음 테이블 업데이트하기
items
+-------+------------+----+
| id | created_by | .. |
+-------+------------+----+
| item1 | id12 | .. |
| item2 | id433 | .. |
+-------+------------+----+
items_tracking
+---------+---------+------+
| user_id | item_id | read |
+---------+---------+------+
| id1 | item1 | 0 |
| id2 | item2 | 0 |
| id94 | item1 | 1 |
+---------+---------+------+
지금 생각 새로운 아이템/포스트가
items
테이블에서 생성 될 때마다, 그것은 또한 모든 사용자 및 열
read = 0
으로
items_tracking
테이블의 행을 만듭니다이었다. 문제는, 나는 이걸 어떻게 해결 해야할지 모르겠다. 왜냐하면
items_tracking
에서 사용하는 외래 키가 아직 많이 결정되지 않았기 때문이다.
두 번째 테이블이 첫 번째를 참조하는 동안 두 테이블에 동시에 삽입하는 방법에 대한 아이디어가 있습니까?
가, 네 말이 맞아! 나는 그런 간단한 해결책을 생각할 수없는 문제에 너무 몰입했다. 그러나 읽지 않은 항목 만 나열하려면 어떻게해야할까요? 'items_tracking' 테이블에 존재하지 않는 아이템을 선택/표시하는 법? 나는 items_tracking 테이블의 행이 존재 하는지를 알아내는 또 다른'SELECT'을 수행 할 것이고, 그렇지 않다면'items' 테이블에'SELECT'를 수행하여 해결할 것이라고 생각합니다. 나는 그것을 렌더링하지 않을 것이다. 옳은? – Dwelle
'SELECT ... FROM items 내가 LEFT JOIN items_tracking t ON (t.item_id = i.id) 어디서 t.item_id가 NULL입니까? – lanzz
입니다. 다시 한 번 감사드립니다! – Dwelle