Permalänk
Medlem

MySQL> Average för text

Jag har sex st standardvärden i en kolumn (färger som textsträngar) och vill få ut medianen (eller medelvärdet, men det blir väl samma sak när det gäller text) ur dessa, alltså den färg som förekommer flest gånger. Om det är flera färger på delad förstaplats vill jag bara ha en färg som resultat, vilken som helst.

AVG fungerar inte på text/varchar, vad får man göra istället?

Permalänk
Medlem

Du får räkna antalet förekomster av de olika texterna (med COUNT och GROUP BY), sortera resultatet (med ORDER BY) och bara returnera den översta (med LIMIT).

Visa signatur

Bra, snabbt, billigt; välj två.

Ljud
PC → ODAC/O2 → Sennheiser HD650/Ultrasone PRO 900/...
PC → S.M.S.L SA300 → Bowers & Wilkins 607

Permalänk
Medlem

Japp, det funkade! Tack för hjälpen!

Om någon ville ha ett mer konkret exempel;

SELECT col, count(col) AS antal FROM svar GROUP BY col ORDER BY antal DESC LIMIT 1;

(col innehåller nu den sträng som förekommer flest gånger)

Permalänk
Hedersmedlem

Ska vi vara petiga så är det väl typvärdet du vill(e) ha?

Visa signatur

Asus ROG STRIX B550-F / Ryzen 5800X3D / 48 GB 3200 MHz CL14 / Asus TUF 3080 OC / WD SN850 1 TB, Kingston NV1 2 TB + NAS / Corsair RM650x V3 / Acer XB271HU (1440p165) / LG C1 55"
NAS: 6700K/16GB/Debian+ZFS | Backup (offsite): 9600K/16GB/Debian+ZFS

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Thomas
Ska vi vara petiga så är det väl typvärdet du vill(e) ha?

Nja, det blev så men gör inget. Hade nog varit bättre med medianen... men det är skit samma. Det är ingen statistiker jag gör sidan åt, direkt (som tur är).

Permalänk
Medlem

Kan man göra egna aggregatfunktioner i mysql? Man kan göra det i Oracle i alla fall...

Visa signatur

ηλί, ηλί, λαμά σαβαχθανί!?