sql >> Database teknologi >  >> RDS >> Mysql

MySQL - Ændring af forespørgslen til at være distinkt på kun 1 kolonne

Det er ikke helt klart, hvad du vil. Givet disse data:

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

hvilke resultater forventer du? Hvis du vil:

http://www.google.com  '???'  'bob,tom'   2

så kunne du lave en SELECT DISTINCT underforespørgsel for at fjerne dubletterne (som du ville sætte i stedet for FROM twl_links ).

Hvis du vil

http://www.google.com  '???'  'bob,tom'   3

så kan du gøre GROUP_CONCAT(DISTINCT screen_name) at få det.

Bemærk, at den returnerede titel i alle tilfælde er tvetydig (medmindre der er en N:1-tilknytning mellem URL og titel, dvs. medmindre hver URL kun har én særskilt titel)

FYI, det lyder som om du har overflødige og svære at forespørge data som følge af manglende normalisering.



  1. SqlAlchemy (Postgres + Flask):Hvordan summerer man flere kolonner?

  2. Installation af RAC til en database med datafiler

  3. Enkel måde at nulstille Django PostgreSQL-databasen?

  4. mysql søg efter segment af tabelnavn