Mysql
 sql >> база данни >  >> RDS >> Mysql

Премахнете дубликати на MySQL JOIN заявка на JSON_ARRAYAGG с INNER JOIN

Това отговаря на първоначалния въпрос.

Не са ви необходими нито tags нито users таблица за вашата заявка, така че тя може да бъде много опростена.

DISTINCT не е разрешено с JSON_AGG() . Но можете да използвате подзаявка:

 SELECT b.user_id, JSON_ARRAYAGG( b.tag_id) AS tags
 FROM (SELECT DISTINCT b.user_id, bt.tag_id
       FROM bookmark_tag bt JOIN
            bookmark b 
            ON b.id = bt.bookmark_id
      ) b
 GROUP BY b.user_id;

Тук е db<>цигулка.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql не може да се стартира в Mgt Development Environment

  2. Проблем с автоматично увеличение в Mysql

  3. По-добър начин за изпълнение на множество MySQL команди с помощта на шел скрипт

  4. mysql получава скорошен ред от най-често срещаната стойност на колона

  5. mysql_connect() се проваля с празно предупреждение