Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQL - Alterando a consulta para ser distinta em apenas 1 coluna


Não está claro exatamente o que você quer. Dados esses dados:
t_uid    url                    title           screen_name
1        http://google.com/     Google          bob
2        http://google.com/     Google Search   bob
3        http://google.com/     Google          tom

que resultados você espera? Se você quiser:
http://www.google.com  '???'  'bob,tom'   2

então você pode fazer um SELECT DISTINCT subconsulta para remover as duplicatas (que você colocaria no lugar de FROM twl_links ).

Se você quiser
http://www.google.com  '???'  'bob,tom'   3

então você pode fazer GROUP_CONCAT(DISTINCT screen_name) para conseguir isso.

Observe que, em todos os casos, o título retornado é ambíguo (a menos que haja um mapeamento N:1 entre URL e título; ou seja, a menos que cada URL tenha apenas um título distinto)

Para sua informação, parece que você tem dados redundantes e difíceis de consultar como resultado da falta de normalização.