mikebol Δημοσ. 26 Μαρτίου 2019 Δημοσ. 26 Μαρτίου 2019 Εχω μια στηλη στην οποια εχω πολλαπλες τιμες χωρισμενες με κομμα. Και θελω να διαγραψω τα data που υπαρχουν μετα το κομμα και να κρατησω αυτα αριστερα. πχ πριν: panathinaikos, olympiakos, aek μετα: panathinaikos Το select query ειναι το select split_part(team, ' , ' , 1) from my_table.
pmav99 Δημοσ. 27 Μαρτίου 2019 Δημοσ. 27 Μαρτίου 2019 μετονομάζεις την υπάρχουσα στήλη από team σε team_old προσθέτεις μία νέα στήλη με την ονομασία team κάνεις insert στην στήλη team ό,τι θες Ελέγχεις το αποτέλεσμα αν όλα είναι οκ, κάνεις drop την στήλη team_old
tsofras Δημοσ. 27 Μαρτίου 2019 Δημοσ. 27 Μαρτίου 2019 (επεξεργασμένο) https://dbfiddle.uk/?rdbms=postgres_9.6&fiddle=28d722a5436eddee3fcd9c8fdb4bbcda -- DDL create table test ( id serial, testvar varchar(512) ); insert into test (testvar) values('panathinaikos, olympiakos, aek '); insert into test (testvar) values('olympiakos, aek '); insert into test (testvar) values('aek, aris '); -- Select values select * from test; SELECT id,array_to_string(regexp_matches(testvar,'^([^,]+),','i'), ';') AS result from test; -- Update update test set testvar = t.result from (SELECT id,array_to_string(regexp_matches(testvar,'^([^,]+),','i'), ';') AS result from test) as t where test.id = t.id; -- test the result select * from test; Επεξ/σία 27 Μαρτίου 2019 από tsofras
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα