SQL String aufsplitten

Tidolop

Neuer Benutzer
Beiträge
1
Hi,
bei einem Spiel werden die Konten von Spielern in einer einzigen Spalte als String gespeichert.
Das Problem hierbei ist, dass ich die Konten nicht sortieren kann um herauszufinden ob jemand verdächtig viel Geld hat.

Es wäre super wenn ich dauerhaft oder jedes Mal wenn ich die Konten überprüfen möchte der String in die drei rechten Spalten aufgeteilt wird.
Die Reihenfolge der Accounts ist leider nicht immer gleich (siehe Bild).

Kann mir hierbei jemand behilflich sein? :)

Nachtrag: Ich verwende MariaDB
 

Anhänge

  • Split Accounts.png
    Split Accounts.png
    63,6 KB · Aufrufe: 10
Werbung:
Zunächst mal grundsätzlich zu den Posts. Es gilt als höfflich, Text zu posten statt Bilder, das erspart den Helfern lästige Tipparbeit und erhöht folglich Deine Chance auf Antworten.


Zu den Fragen:
- Du kannst sortieren
- Du kannst ein Select Statement in einen View verpacken und dann auf dieses Statement immer lesend zugreifen, als sei es eine Tabelle. Das ist dauerhaft.
- Dauerhaft könnte man allerdings auch das Modell so umbauen, dass solche zentralen Spalten echte Tabellenspalten sind. Das gilt besonders, wenn man Performanceprobleme bekommt.
- Die Reihenfolge von Objektschlüsseln ist in JSON egal, sollte also der DB (einer guten Implementierung) auch egal sein

Code:
create view xy_flat_accounts as
select
json_value(accounts,'$.bank') as bank,
json_value(accounts,'$.money ') as money,
json_value(accounts,'$.black_money') as black_money,
…

oder
Code:
order by json_value(accounts,'$.bank') desc
 
Zurück
Oben