Portál AbcLinuxu, 27. dubna 2024 02:35


Dotaz: secteni vsech cisel

9.7.2005 09:47 Karel Borkovec | skóre: 28 | blog: HP_NX9010 | Tábor
secteni vsech cisel
Přečteno: 185×
Odpovědět | Admin
Dobry den. Mam soubour a v nem jsou pod sebou cisla. Vzdy bude pocet radku jiny a ja ybch potreboval vsechna cisla v tom souboru secist. Poradi nekdo? (v programovani teprve zacinam) Dekuji moc.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

9.7.2005 09:51 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: secteni vsech cisel
Odpovědět | | Sbalit | Link | Blokovat | Admin
Možností je spousta, například
awk '{sum += $1} END {print sum}'
9.7.2005 11:26 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: secteni vsech cisel
Bez dalších procesů to je např.:
for x in $(<soubor); do ((sum+=x)); done
echo $sum
9.7.2005 13:57 Karel Borkovec | skóre: 28 | blog: HP_NX9010 | Tábor
Rozbalit Rozbalit vše Re: secteni vsech cisel
dekuji va moc :o)
9.7.2005 14:33 Karel Borkovec | skóre: 28 | blog: HP_NX9010 | Tábor
Rozbalit Rozbalit vše Re: secteni vsech cisel
Tak jsem hodne pokrocil, ale narazil jsem na problem. Zase mam v souboru na kazdem radku jedno cislo a potreboval bych tyto cislo dostat do jednoho sloupce v MySQL databazi. Existuje nejake reseni? Dekuji za odpoved.
9.7.2005 14:57 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: secteni vsech cisel
LOAD DATA INFILE ...

Viz dokumentaci MySQL.
9.7.2005 15:58 Karel Borkovec | skóre: 28 | blog: HP_NX9010 | Tábor
Rozbalit Rozbalit vše Re: secteni vsech cisel
Tak se mi to nedari. Uz mam v tabulce 2 sloupce (s daty), ted jsem pridal treti a do toho potrebuji dostat ty cisla ze souboru, pouzil jsem to takto:
mysql> LOAD DATA INFILE "/home/her-ur/p4.txt" REPLACE \
    -> INTO TABLE user \
    -> (data_celkem);
Query OK, 8 rows affected (0.07 sec)
Records: 4  Deleted: 4  Skipped: 0  Warnings: 0
Ale vytvori se mi novy radek a ke vsemu se vlozi pouze posledni cislo ze souboru. Co delam blbe, aby se mi vlozily vsechna cisla do sloupce od zacatku az do konce?
9.7.2005 16:13 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: secteni vsech cisel
Ach jo, měl jsem ti odpovědět hned na začátku, ať to dáš do nového dotazu. MySQL nemá nic společeného se sčítáním čísel v shellu...
9.7.2005 16:24 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: secteni vsech cisel
Jinak tahle operace nedává smysl, protože neexistuje způsob, jak by mohlo MySQL poznat, který řádek v souboru patří ke kterému v databázi. Pokud chceš natahovat data po jednotlivých sloupcích, tak musíš mít v tabulce nějaký unique sloupec, ten mít vždy i v těch souborech a natahovat s replace dvojici (unique_sloupec, nový_sloupec) -- pak může MySQL změnit data v těch správných řádcích.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.