Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak budować komentarze w wątkach z 1 lub 2 zapytaniami?

Jeśli potrzebujesz tylko 2 poziomów, oto sposób z jednym zapytaniem:

Twój stół - id, parent_id, comment kolumny

Kod

$rows = mysql_query('
  select *
  FROM
    comments
  ORDER BY
    id DESC');

$threads = array();
foreach($rows as $row) {
  if($row['parent_id'] === '0') {
    $threads[$row['id']] = array(
      'comment' => $row['comment'],
      'replies' => array()
    );
  } else {
    $threads[$row['parent_id']]['replies'][] = $row['comment'];
  }
}

W $threads będziesz mieć wszystkie swoje główne wątki i $threads[$id]['replies'] zawiera wszystkie odpowiedzi. Wątki są posortowane - najnowsze =pierwsze, dodaj stronicowanie i gotowe.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL ConnectorJ z wieloma instrukcjami SQL

  2. Jak wybrać posty utworzone przeze mnie lub moich znajomych w aktualnościach?

  3. cc1:błąd:nierozpoznana opcja wiersza poleceń -Wno-null-conversion podczas instalacji python-mysql na mac 10.7.5

  4. MySQL łączy wszystkie kolumny

  5. Catchable błąd krytyczny:obiekt klasy mysqli_stmt nie mógł zostać przekonwertowany na string