PHPize Online / SQLize Online  /  SQLtest Online

A A A
Share      Blog   Popular
Copy Format Clear
CREATE TABLE test_table ( id serial primary key, prev_id integer null, next_id integer null ); INSERT INTO test_table (prev_id, next_id) VALUES (null, 2), (1, 3), (3, null); -- Начальные данные -- Создаём новый первый абзац -- Находим id 1ого абзаца (= 1) INSERT INTO test_table (prev_id, next_id) VALUES (null, 1); -- Добавили 4ый UPDATE test_table SET prev_id = 4 WHERE id = 1; -- Создаём абзац после 2ого -- После него идёт 3ий INSERT INTO test_table (prev_id, next_id) VALUES (2, 3); -- Добавили 5ый UPDATE test_table SET next_id = 5 WHERE id = 2; UPDATE test_table SET prev_id = 5 WHERE id = 3; -- Создаём последний абзац -- Перед ним окажется 3ий INSERT INTO test_table (prev_id, next_id) VALUES (3, null); -- Добавили 6ой UPDATE test_table SET next_id = 6 WHERE id = 3; SELECT * FROM test_table;
Copy Clear
Copy Format Clear
<?php $query = "SELECT * FROM test_table;"; $stmt = $pdo->prepare($query); $stmt->execute(); $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); var_export($rows); $ar = []; var_dump(array_search(['id' => 4, 'prev_id' => NULL, 'next_id' => 1,], $rows)); /*while (count($ar) < count($row)) { if (count($ar) === 0) { var } }*/
Show:  
Copy Clear