За последние 24 часа нас посетил 37181 программист и 7898 роботов. Сейчас ищут 1750 программистов ...

результирующая таблица из двух таблиц

Тема в разделе "PHP для новичков", создана пользователем l_2001, 25 авг 2023.

  1. l_2001

    l_2001 Активный пользователь

    С нами с:
    9 дек 2014
    Сообщения:
    85
    Симпатии:
    3
    здравствуйте! сломал голову уже, прошу помочь! на mysql есть две таблицы формата
    |_. GroupLeader |_. ClientID |_. GroupID |
    | 1027158233 | 1027158233 | K34K89WD5OY0 |
    | 1027158233 | 1817027294 | K34K89WD5OY0 |
    и
    |_. ID_GR |_. ID_KL |
    | 1027158233 | 23221101 |
    | 1027158233 | 1817027294 |
    суть в том, что в результирующей таблице должно получиться следующее:
    |_. GroupLeader |_. ClientID |_. GroupID |_. ID_GR |_. ID_KL |
    | 1027158233 | 1027158233 | K34K89WD5OY0 | null | null|
    | 1027158233 | 1817027294 | K34K89WD5OY0 |1027158233 | 1817027294 |
    | null | null | null | 1027158233 | 23221101 |

    подскажите возможно ли вообще такое средствами чисто sql или sql + php? если да, то подтолкните в верном направлении, а если есть возможность, то и примером! заранее вам всем благодарен!
     
  2. Slava Rozhnev

    Slava Rozhnev Новичок

    С нами с:
    6 сен 2021
    Сообщения:
    87
    Симпатии:
    26
    Адрес:
    https://phpize.online
    Вот пример FULL OUTER JOIN в MySQL
    Код (Text):
    1. select t1.*, t2.*
    2. from t1
    3. left join t2 on t1.GroupLeader = t2.ID_GR and t1.ClientID = t2.ID_KL
    4. union
    5. select t1.*, t2.*
    6. from t2
    7. left join t1 on t1.GroupLeader = t2.ID_GR and t1.ClientID = t2.ID_KL
    8. order by GroupLeader desc, ClientID desc;
    https://sqlize.online/sql/mysql57/66c2a8448b3e18ca521fc758a2b7d44e/
     
  3. dmitrylis

    dmitrylis Новичок

    С нами с:
    22 авг 2023
    Сообщения:
    13
    Симпатии:
    0

    Спасибо за сайт.
     
  4. Slava Rozhnev

    Slava Rozhnev Новичок

    С нами с:
    6 сен 2021
    Сообщения:
    87
    Симпатии:
    26
    Адрес:
    https://phpize.online
    Пользуйтесь на здоровье. Специально для таких целей сделал.
    https://habr.com/ru/articles/756844/
     
    artoodetoo и don.bidon нравится это.
  5. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    947
    Симпатии:
    147
    Ребят-девчат, айда накидаем лайков тут и на Хабре (кто может) Славе, реально достойная и очень полезная тулза же!
     
  6. l_2001

    l_2001 Активный пользователь

    С нами с:
    9 дек 2014
    Сообщения:
    85
    Симпатии:
    3
    ребяты - всем спасибо! буду смотреть... может и не сейчас :( но то такое... всем спасибо!
     
  7. l_2001

    l_2001 Активный пользователь

    С нами с:
    9 дек 2014
    Сообщения:
    85
    Симпатии:
    3
    ещё раз всем спасибо за помощь, но обнаружилось к сожалению следующее... оказывается в результирующей таблице должно быть так:
    таблица 1
    |_. GroupLeader |_. ClientID |_. GroupID |
    | 1027158233 | 1027158233 | K34K89WD5OY0 |
    | 1027158233 | 1817027294 | K34K89WD5OY0 |
    таблица 2
    |_. ID_GR |_. ID_KL |
    | 1027158233 | 23221101 |
    | 1027158233 | 1817027294 |
    результирующая
    |_. GroupLeader |_. ClientID |_. GroupID |_. ID_GR |_. ID_KL |
    | 1027158233 | 1027158233 | K34K89WD5OY0 | 1027158233 | 23221101 |
    | 1027158233 | 1817027294 | K34K89WD5OY0 |1027158233 | 1817027294 |

    как вы считаете, такое вообще возможно сделать? спасибо!
     
  8. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.129
    Симпатии:
    1.223
    Адрес:
    там-сям
    Считаю что такое невозможно сделать, пока ты не воспользуешся dbfiddle или тем что Слава сделал.
    Потом это резко станет возможно.