Skip to content

Instantly share code, notes, and snippets.

@hackimov
Last active May 22, 2020 13:46
Show Gist options
  • Save hackimov/8cea1582d4cad87af9f34d9ed144cdcd to your computer and use it in GitHub Desktop.
Save hackimov/8cea1582d4cad87af9f34d9ed144cdcd to your computer and use it in GitHub Desktop.

Revisions

  1. hackimov revised this gist May 22, 2020. 1 changed file with 24 additions and 25 deletions.
    49 changes: 24 additions & 25 deletions CHILDS_SEARCH.SQL
    Original file line number Diff line number Diff line change
    @@ -1,26 +1,25 @@
    WITH RECURSIVE catalogs_tree AS
    (
    SELECT
    catalog_id,
    1 AS hierarchy_level
    FROM
    catalog
    WHERE
    catalog_id = '".$catalog_id."'
    AND mailbox_id = '".$session['mailbox_id']."'
    UNION ALL
    SELECT
    cat.catalog_id,
    ct.hierarchy_level + 1
    FROM
    catalog cat,
    catalogs_tree ct
    WHERE
    cat.parent_catalog_id = ct.catalog_id
    )
    SELECT
    products.*
    FROM
    catalogs_tree
    INNER JOIN products on catalogs_tree.catalog_id = products.catalog_id
    "
    (
    SELECT
    catalog_id,
    1 AS hierarchy_level
    FROM
    catalog
    WHERE
    catalog_id = '".$catalog_id."'
    AND mailbox_id = '".$session['mailbox_id']."'
    UNION ALL
    SELECT
    cat.catalog_id,
    ct.hierarchy_level + 1
    FROM
    catalog cat,
    catalogs_tree ct
    WHERE
    cat.parent_catalog_id = ct.catalog_id
    )
    SELECT
    products.*
    FROM
    catalogs_tree
    INNER JOIN products on catalogs_tree.catalog_id = products.catalog_id;
  2. hackimov revised this gist May 22, 2020. No changes.
  3. hackimov created this gist May 22, 2020.
    26 changes: 26 additions & 0 deletions CHILDS_SEARCH.SQL
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,26 @@
    WITH RECURSIVE catalogs_tree AS
    (
    SELECT
    catalog_id,
    1 AS hierarchy_level
    FROM
    catalog
    WHERE
    catalog_id = '".$catalog_id."'
    AND mailbox_id = '".$session['mailbox_id']."'
    UNION ALL
    SELECT
    cat.catalog_id,
    ct.hierarchy_level + 1
    FROM
    catalog cat,
    catalogs_tree ct
    WHERE
    cat.parent_catalog_id = ct.catalog_id
    )
    SELECT
    products.*
    FROM
    catalogs_tree
    INNER JOIN products on catalogs_tree.catalog_id = products.catalog_id
    "