sql >> Databasteknik >  >> RDS >> Mysql

MySQL - Ändra frågan så att den är distinkt på bara en kolumn

Det är inte klart exakt vad du vill. Med tanke på dessa uppgifter:

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

vilka resultat förväntar du dig? Om du vill:

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

sedan kan du göra en SELECT DISTINCT underfråga för att ta bort dubbletterna (som du skulle lägga i stället för FROM twl_links ).

Om du vill

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

sedan kan du göra GROUP_CONCAT(DISTINCT screen_name) för att få det.

Observera att titeln som returneras i alla fall är tvetydig (såvida det inte finns en N:1-mappning mellan URL och titel, det vill säga om inte varje webbadress bara har en distinkt titel)

FYI, det låter som att du har en överflödig och svår att fråga data som ett resultat av en brist på normalisering.



  1. Hur uppdaterar jag tabellen (MYSQL)

  2. Hur får man en ålder från ett D.O.B-fält i MySQL?

  3. Uppdatera materialiserade vyer:Samtidighet, transaktionsbeteende

  4. Ta bort utgången datarad automatiskt i MySQL