Выбор записей из таблицы с отношениями отца и сына - PullRequest
0 голосов
/ 10 октября 2018

Я использую базу данных SQL-SERVER.Как выбрать все записи, связанные с полем "padre"?Пример:

table with info

Например, выбор всех записей, связанных с записью, с помощью CODIGO='AA'.

Ответы [ 3 ]

0 голосов
/ 16 октября 2018

Я предполагаю, что вы хотите запросить всех потомков 'AA'.В этом случае решение для MS SQL-SERVER будет

with hh as (
  select table_name.* from table_name where codigo = 'AA'
  union all
  select table_name.* from hh join table_name on table_name.padre = hh.codigo
)

select * from hh
0 голосов
/ 27 октября 2018

Это работало нормально:

SELECT * FROM (SELECT * FROM articulo ORDER BY padre, codigo) sorteado, (SELECT @pv: = 'AA') ИНИЦИАЛИЗАЦИЯ ГДЕ find_in_set (padre, @pv) И длина(@pv: = concat (@pv, ',', codigo));

0 голосов
/ 10 октября 2018

Вы не указали, какую базу данных вы используете, и имя таблицы, поэтому я собираюсь указать что-то общее:

select *
from table_name
where padre='AA';

Сначала вы сказали "относится к полю padreэто противоречит clave='AA', поэтому выше был мой ответ. Я добавляю новый ответ с запросом ниже. Ниже приведен запрос, который выбирает все записи, где codigo='AA':

select *
from table_name
where codigo='AA';
...