Вложенный MySQL-запрос PHP (рекурсивный?)Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Вложенный MySQL-запрос PHP (рекурсивный?)

Сообщение Anonymous »

Я играю с GnuCash с базой данных, хранящейся на MySql.
Цель состоит в том, чтобы отобразить эти данные на веб-странице с помощью PHP.
Изображение

Таблица базы данных, которую я пытаюсь запросить:

Код: Выделить всё

Field           Type           Collation           Null    Key     Default  Extra   Privileges                       Comment
--------------  -------------  ------------------  ------  ------  -------  ------  -------------------------------  ---------
guid            varchar(32)    utf8mb4_0900_ai_ci  NO      PRI     (NULL)           select,insert,update,references
name            varchar(2048)  utf8mb3_general_ci  NO              (NULL)           select,insert,update,references
account_type    varchar(2048)  utf8mb3_general_ci  NO              (NULL)           select,insert,update,references
commodity_guid  varchar(32)    utf8mb4_0900_ai_ci  YES             (NULL)           select,insert,update,references
commodity_scu   int            (NULL)              NO              (NULL)           select,insert,update,references
non_std_scu     int            (NULL)              NO              (NULL)           select,insert,update,references
parent_guid     varchar(32)    utf8mb4_0900_ai_ci  YES             (NULL)           select,insert,update,references
code            varchar(2048)  utf8mb3_general_ci  YES             (NULL)           select,insert,update,references
description     varchar(2048)  utf8mb3_general_ci  YES             (NULL)           select,insert,update,references
hidden          int            (NULL)              YES             (NULL)           select,insert,update,references
placeholder     int            (NULL)              YES             (NULL)           select,ins
ert,update,ссылки

Код: Выделить всё

CREATE TABLE `accounts` (
`guid` varchar(32) NOT NULL,
`name` varchar(2048) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,
`account_type` varchar(2048) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL,
`commodity_guid` varchar(32) DEFAULT NULL,
`commodity_scu` int NOT NULL,
`non_std_scu` int NOT NULL,
`parent_guid` varchar(32) DEFAULT NULL,
`code` varchar(2048) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL,
`description` varchar(2048) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL,
`hidden` int DEFAULT NULL,
`placeholder` int DEFAULT NULL,
PRIMARY KEY (`guid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
Учетная запись GNU Cash Stores (родительская запись/дочерние записи) в иерархических данных в MySQL.
Мой код PHP: Выдает следующие результаты (выполняет только первую запись набора записей и останавливается):

SELECT a.

Код: Выделить всё

guid, а.name
ИЗ учетных записей a ГДЕ a. = 'Корневая
учетная запись'; 1 1 4bd6de0c4a704764853f508553791205 Корневая учетная запись SELECT
a.

Код: Выделить всё

guid, а.name
ИЗ учетных записей a ГДЕ a.

Код: Выделить всё

parent_guid
=
'4bd6de0c4a704764853f508553791205' ПОРЯДОК ПО a.

Код: Выделить всё

name; 1 2
6a038fc8720140e6adf6b6b61140c3b0 Активы ВЫБЕРИТЕ a.guid, а.name
ОТ

Код: Выделить всё

accounts
а ГДЕ а.

Код: Выделить всё

parent_guid
=
'6a038fc8720140e6adf6b6b61140c3b0' ПОРЯДОК ПО a.

Код: Выделить всё

name; 1 3
7e5f2d4e89f04bac9fec8fc9ac79c409 Дебиторская задолженность ВЫБЕРИТЕ a.guid
,
а. ИЗ учетных записей a ГДЕ a.

Код: Выделить всё

parent_guid
=
'7e5f2d4e89f04bac9fec8fc9ac79c409' ПОРЯДОК ПО a.;


Подробнее здесь: https://stackoverflow.com/questions/798 ... -recursive
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»