Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Closed TopicStart new topic
> [MySQL][PHP][PHP/SQL] Jak zmienić hurtowo formę daty w bazie danych
oi.
post
Post #1





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

Ostrzeżenie: (10%)
X----


Witam,
mam problem z forma daty w mojej bazie danych otóż każdy rekord ma formę daty np
13-12-10 w grudniu
28-11-10 w listopadzie

jak hurtowo zamienić datę w bazie danych na formę odpowiednio
13-12-10 --> 13-12-2010
28-11-10 --> 28-11-2010
Go to the top of the page
+Quote Post
poli25
post
Post #2





Grupa: Zarejestrowani
Postów: 239
Pomógł: 20
Dołączył: 19.02.2010

Ostrzeżenie: (0%)
-----


a sprobuj:
update tabela set substr(data,6,2)=2010
najpierw utworz sobie kopie tabeli bo nie jestem pewien czy Ci zadziała winksmiley.jpg
Go to the top of the page
+Quote Post
darko
post
Post #3





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Chyba najszybciej będzie Ci wyeksportować zawartość bazy danych (wraz ze strukturą) do pliku .sql i rzeźbić już w edytorze tekstowym zamieniając wszystkie wystąpienia -10 na -2010, ale uwaga na październik! Na końcu usuwasz starą bazę i robisz import nowej. Można też inaczej, korzystając z funkcji mysql: update, select, replace i/lub regexp, ale to już trochę zabawy z tym będzie.


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
oi.
post
Post #4





Grupa: Zarejestrowani
Postów: 145
Pomógł: 1
Dołączył: 12.07.2006

Ostrzeżenie: (10%)
X----


No właśnie liczyłem na zapytanie do bazy danych UPDATE SET .... które zamieniłoby mi automatycznie. Co do października to można tak 12-10 zamień na 12-2010 ; 11-2010 zamieniam na 11-2010 , 10-10 zamieniam na 10-2010 itp /12 ctr+H w notatniku ;-) /

W innym wątku jest podobne rozwiązanie:
  1. UPDATE tabela SET DATA = CONCAT(SUBSTRING(DATA, -4), '-', SUBSTRING(DATA, -7, 2), '-', SUBSTRING(DATA, -10, 2))

tylko że to zamienia miejscami z np. 06.10.2010 na np. 2010-10-06.

Jak to zamienić w moim przypadku ?
Go to the top of the page
+Quote Post
poli25
post
Post #5





Grupa: Zarejestrowani
Postów: 239
Pomógł: 20
Dołączył: 19.02.2010

Ostrzeżenie: (0%)
-----


no chyba winksmiley.jpg
UPDATE tabela SET DATA = CONCAT(SUBSTRING(DATA, 0,2), '-', SUBSTRING(DATA, 4, 2), '-2010'))


przepraszam mam niedopatrzenie powinno być:
UPDATE daty SET DATA = CONCAT(SUBSTR(DATA, 1,2), '-', SUBSTR(DATA, 4, 2), '-2010')

Ten post edytował poli25 14.12.2010, 07:59:06
Go to the top of the page
+Quote Post
darko
post
Post #6





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat(poli25 @ 13.12.2010, 22:34:16 ) *
no chyba winksmiley.jpg
UPDATE tabela SET DATA = CONCAT(SUBSTRING(DATA, 0,2), '-', SUBSTRING(DATA, 4, 2), '-2010'))

Raczej:
  1. UPDATE tabela SET DATA = CONCAT(SUBSTRING(DATA, 0,1), SUBSTRING(DATA, 1,5), '-', '2010')


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
poli25
post
Post #7





Grupa: Zarejestrowani
Postów: 239
Pomógł: 20
Dołączył: 19.02.2010

Ostrzeżenie: (0%)
-----


Cytat(darko @ 14.12.2010, 02:07:17 ) *
Raczej:
  1. UPDATE tabela SET DATA = CONCAT(SUBSTRING(DATA, 0,1), SUBSTRING(DATA, 1,5), '-', '2010')


masz rację twój kod jest poprawny


powinienem był napisać:

update daty set data=concat(substr(data,1,2),'-',substr(data,4,2),'-2010')

Ten post edytował poli25 14.12.2010, 07:54:21
Go to the top of the page
+Quote Post
webdice
post
Post #8


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Tak się kolego bawić nie będziemy. Pytałeś już o to w innym temacie. Zamykam.
Go to the top of the page
+Quote Post

Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 08:46