Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako pronaći sve zapise koji počinju s nulom?

[es] :: MySQL :: Kako pronaći sve zapise koji počinju s nulom?

[ Pregleda: 764 | Odgovora: 9 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

cronewbie

Član broj: 143514
Poruke: 32
*.adsl.net.t-com.hr.



Profil

icon Kako pronaći sve zapise koji počinju s nulom?29.09.2007. u 08:12

Imam neke brojeve u koloni Vrijednost koji su duzine 5 znakova. Ja zelim pronaći sve brojeve koji mi počinju s 0 ili s 00, kako to mogu uraditi u samom sql-u?
29.09.2007. u 08:12 

Predrag Supurovic
DataVoyage, wireless.uzice.net
Užice

Član broj: 157129
Poruke: 1046
77.46.199.*



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?29.09.2007. u 08:26
Ako je to polje karakter tipa (a samo tako mogu da ostanu nule ispred broja) onda poredi kao i svaki drugi string.
29.09.2007. u 08:26 

cronewbie

Član broj: 143514
Poruke: 32
*.adsl.net.t-com.hr.



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?29.09.2007. u 08:33
Meni ustvari treba da saznam sve zapise koji pocinju s 0 ili 00 i napravim na te vrijednosti UPDATE tako da mi ostane vrijednost bez tih nula.

Npr ako imam 01234 da mi napravim UPDATE kad mi makne nulu i ostane samo 1234. Gledam TRIM f-ju u mysql-u pa mi se cini da bi preko nje nesto mogao al ne uspijeva mi iz prve?
29.09.2007. u 08:33 

mb_sa

Član broj: 50529
Poruke: 156
*.PPPoE-6001.sa.bih.net.ba.



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?29.09.2007. u 09:34
Ukoliko ti sve ovo treba kako bi podatke prepravio u bazi i neces ovo bas cesto korstiti, ispod rješenje bi ti trebalo zadovoljiti!

Code:

UPDATE tabela SET broj = SUBSTRING(broj,2) WHERE broj LIKE '0%';
UPDATE tabela SET broj = SUBSTRING(broj,3) WHERE broj LIKE '00%';
29.09.2007. u 09:34 

Predrag Supurovic
DataVoyage, wireless.uzice.net
Užice

Član broj: 157129
Poruke: 1046
77.46.199.*



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?29.09.2007. u 09:45
Ako to radis jednokratno onda prosto mozes da svaki podatak pretvoris su numerik pa onda opet u string i upises u polje. Tako ne moras nista da parsiras. Dodatno mozes da filtriras slogove kojima je prvi karakter '0'.

Medjutim ako je to kolona vrednost i ti brijevi su zaist aprobjevi, promeni tip u numerik, gde ce onda taj broj zaista biti broj i samim tim nece ni imati vodece nule.
29.09.2007. u 09:45 

cronewbie

Član broj: 143514
Poruke: 32
*.adsl.net.t-com.hr.



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?01.10.2007. u 22:42
Ovo sa SUBSRTING-om je uspjelo i to je ono što sam htjeo. Hvala!

Ostao mi je još posljednji zadatak, a taj je da svim brojevima koji su dugi 3 ili 4 znaka nadodam još nule. Dakle, ako mi je ostalo 1234 tamo da mu još dodam nulu i da je od tada taj broj 12340. Isto tako i za npr. 123 da mi je od sada 12300. Sa SUBSTRINGom mi je jasno kako to napraviti za sve brojeve bez obzira koliko znakova oni imaju ali to ne zelim jer ce mi se onda i one vrijednosti od ranije koje su duze od 3 ili 4 znaka poremetiti pa mi moze broj koji recimo glasi 23456 postati 2345600 a to nikako ne zelim.
01.10.2007. u 22:42 

lukeguy
Novi Sad

Član broj: 46545
Poruke: 333
*.net
Via: [es] mailing liste



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?01.10.2007. u 23:08
Pa dodaj onoliko nula koliko ti fali do određene dužine. Npr. ako ti treba ukupno 6 cifara, onda dodaješ 6 - aktuelna dužina. Aktuelnu dužinu dobijaš pomoću funkcije len().
01.10.2007. u 23:08 

cronewbie

Član broj: 143514
Poruke: 32
*.adsl.net.t-com.hr.



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?02.10.2007. u 08:45
Uh, nemam predodzbu kako to uraditi :(
02.10.2007. u 08:45 

357_97

Član broj: 53056
Poruke: 45
*.eunet.yu.



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?02.10.2007. u 15:42
Pogledaj sta radi funkicja RPAD...
02.10.2007. u 15:42 

BluesRocker

Član broj: 20536
Poruke: 768
89.216.223.*



Profil

icon Re: Kako pronaći sve zapise koji počinju s nulom?02.10.2007. u 17:00
Code:

UPDATE `tabela` SET broj = CONCAT(broj,'0') WHERE LENGTH(broj) = 4;
UPDATE `tabela` SET broj = CONCAT(broj,'00') WHERE LENGTH(broj) = 3;
UPDATE `tabela` SET broj = CONCAT(broj,'000') WHERE LENGTH(broj) = 2;

Romanes Eunt Domus
02.10.2007. u 17:00 

[es] :: MySQL :: Kako pronaći sve zapise koji počinju s nulom?

[ Pregleda: 764 | Odgovora: 9 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.