Jörg: RegEx mysql 8

Beitrag lesen

Hallo Rolf,

Frage vorweg: Bist Du absolut sicher, dass Du MYSQL 8 hast und kein Datenmariechen? MYSQL 8 soll teuer sein, hab ich gehört, weswegen die Hoster alle zur Maria geflüchtet sind.

Niemals bin ich mir da sicher.
Eher im Gegentum.
Das wird sicher ne Maria sein.

A SET column can have a maximum of 64 distinct members.

Ist das okay für Dich? Ich GLAUBE nämlich, dass das bedeutet, dass es maximal 64 verschiedene Usernamen in der gesamten Tabelle geben darf, weil MYSQL jedem Namen eine Bitposition zuordnet.

Ja, das wäre ok.

Anderes Problem: Was ist mit User-Einträgen wie "Rolf, Joerg , Fritz,Otto,Paul" - also unklare Spacemengen um das Komma herum. Kann das passieren? Haben User durch Fehlbedienung die Möglichkeit, kreativ Spaces einzusetzen?

Nenee, das ist kein Problem.

Dass dieses geregexe eine Performance-Katastrophe ist, brauch ich Dir nicht zu sagen. Wenn ich dein Posting so lese, weißt Du das schon... Ich hoffe, deine Query enthält weitere Suchbedingungen, die die zu durchsuchende Menge begrenzen, so dass nicht allzuviele Rows durchforstet werden müssen. Wenn die User-Spalte im Index ist, könnte das aber dazu führen, dass er mit einem Index-Scan arbeiten kann und keinen Table-Scan braucht. Hängt jetzt von der Gesamtquery ab. Mach einen EXPLAIN.

Wenn ich mal ein bisschen zeit habe, ändere ich das ab.
Scheint mir gar nicht soooo viel Arbeit zu sein.
Hey... ich war das echt (nach sql-Maßstäben) "jung" 😀

Woher ich das weiß? Hab ich in meinem Leben schonmal MYSQL 8 benutzt? Nö. Kenn ich die ICU Library? Nö. Alles just im Handbuch zusammengelesen. Mag also falsch sein. In dem Fall findest Du den Link für weitere Lektüre zu Beginn meiner Antwort.

Danke fürs "Mitlesen", Rolf 😉

Jörg