1 (edytowany przez manguscik 2016-01-23 18:10:19)

Temat: Sqlite3 zmiana ustawień .show i komenda sort

Chce w bazie Sqlite3 zmienić ustawiania .show jak po nieżej:

root@OpenWrt:/mnt/dysk/meteo# sqlite3 meteo.db
SQLite version 3.8.11.1 2015-07-29 20:00:57
Enter ".help" for usage hints.
sqlite> .show
        echo: off
         eqp: off
  explain: off
     headers: off
        mode: list
   nullvalue: ""
      output: stdout
colseparator: "|"
rowseparator: "\n"
       stats: off
       width:
sqlite> .separator " "
sqlite> .headers on
sqlite> .quit

ale po wyjściu nadal mam domyślny separator | i wyłączopny headers w bazie jak to zapisąć aby zapamiętał na stałe te ustawiania dla meteo.db.

Stacja Pogody pracująca na LEDE / Openwrt + arduino. http://dominikowice.one.pl  Pomiar temperatury, ciśnienia, wilgotności  online + wykresy 24 godzinne, 7 dniowe, 30 dniowe, itp. A wszystko to na Routerze NETGEAR WNDR 4300 z wgranym LEDE.

2

Odp: Sqlite3 zmiana ustawień .show i komenda sort

Manual się kłania. Opcje separator i header przy wykonywaniu z linii poleceń

sqlite3 -separator ' ' -header meteodb "select...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3 (edytowany przez manguscik 2016-01-21 21:07:28)

Odp: Sqlite3 zmiana ustawień .show i komenda sort

Cezary a mam jeszcze jedno pytanie co do wyciągania danych z bazy danych  jako ostatnie 144 wartości za pomocą komendy :
sqlite3 -separator ' ' /mnt/dysk/meteo/meteo.db  "SELECT * FROM meteo ORDER BY id DESC LIMIT 144;" >/mnt/dysk/meteo/dane24.txt

I teraz jest problem tego typu że jak wyciągnie dane to zapisuje je mi je od wartości id największej do najmniejszej i wtedy wykres z 24h jest źle robiony czy jest możliwość odwrócić zapisaną wartość ? myślałem o poleceniu sort -n tylko nie wiem w którym miejscu je wcisnąć do komendy

Stacja Pogody pracująca na LEDE / Openwrt + arduino. http://dominikowice.one.pl  Pomiar temperatury, ciśnienia, wilgotności  online + wykresy 24 godzinne, 7 dniowe, 30 dniowe, itp. A wszystko to na Routerze NETGEAR WNDR 4300 z wgranym LEDE.

4

Odp: Sqlite3 zmiana ustawień .show i komenda sort

Masz tam datę. Czemu nie wyciągniesz danych za ostatnie 24 godziny  zamiast "ostatnich 144 rekordów"

Co do pytania - po prostu posortuj dane odpowiednio. Order by w selekcie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5 (edytowany przez manguscik 2016-01-21 21:24:33)

Odp: Sqlite3 zmiana ustawień .show i komenda sort

A jak można wyjąć dane za ostatnie 24h ? co masz na myśli.

Oki posortowałem po ASC i teraz jest dobrze big_smile a co do pomysłu możesz rozwinąć przyda się na przyszłość

Stacja Pogody pracująca na LEDE / Openwrt + arduino. http://dominikowice.one.pl  Pomiar temperatury, ciśnienia, wilgotności  online + wykresy 24 godzinne, 7 dniowe, 30 dniowe, itp. A wszystko to na Routerze NETGEAR WNDR 4300 z wgranym LEDE.

6

Odp: Sqlite3 zmiana ustawień .show i komenda sort

select * from tabela where kolumna_z_czasem >= datetime('now', '-24 hours')

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7 (edytowany przez manguscik 2016-01-21 23:26:01)

Odp: Sqlite3 zmiana ustawień .show i komenda sort

Kto mi wytłumaczy dlaczego mając plik źródłowy dane.txt chcę je posortować komendą:
sort -n  dane.txt > dane2.txt i po wykonaniu  nie wiem czemu ale źle mi sortuje tak jak widać poniżej :

  Dane.txt         Dane2.txt
Plik zródłowy    plik posortowany 
-4.20        -6.00
-4.30        -6.00
-4.50        -6.00
-4.60        -6.10
-4.60        -6.10
-4.50        -6.10
-4.40        -6.10
-4.50        -6.10
-4.60        -6.20
-4.50        -5.00
-5.00        -5.00
-5.10        -5.00
-5.00        -5.00
-4.80        -5.00
-4.70        -5.00
-4.50        -5.10
-4.40        -5.10
-4.50        -5.20
-4.70        -5.20
-4.80        -5.20
-4.70        -5.20
-4.80        -5.30
-4.90        -5.30
-5.10        -5.30
-5.20        -5.30
-5.20        -5.40
-5.40        -5.40
-5.40        -5.40
-5.60        -5.50
-5.40        -5.50
-5.20        -5.50
-5.20        -5.50
-5.50        -5.50
-5.70        -5.60
-5.60        -5.60
-5.50        -5.60
-5.60        -5.60
-5.90        -5.70
-5.90        -5.70
-6.10        -5.80
-6.00        -5.90
-5.90        -5.90
-6.10        -5.90
-6.10        -5.90
-6.00        -4.00
-6.00        -4.00
-5.80        -4.10
-6.20        -4.20
-6.10        -4.20
-5.90        -4.30
-6.10        -4.30
-5.70        -4.30
-5.60        -4.30
-5.50        -4.40
-5.50        -4.40
-5.50        -4.40
-5.30        -4.40
-5.30        -4.50
-5.30        -4.50
-5.30        -4.50
-5.00        -4.50
-5.00        -4.50
-5.00        -4.50
-5.00        -4.60
-4.80        -4.60
-4.70        -4.60
-4.30        -4.70
-4.40        -4.70
-4.20        -4.70
-3.90        -4.70
-4.10        -4.80
-4.40        -4.80
-4.30        -4.80
-3.80        -4.80
-4.30        -4.90
-3.90        -3.00
-4.00        -3.00
-3.80        -3.00
-3.70        -3.00
-4.00        -3.00
-3.80        -3.10
-3.60        -3.20
-3.70        -3.20
-3.40        -3.20
-3.30        -3.20
-3.60        -3.30
-2.50        -3.30
-3.50        -3.30
-3.00        -3.30
-2.60        -3.40
-2.80        -3.50
-3.00        -3.50
-3.30        -3.50
-3.30        -3.50
-3.20        -3.50
-3.00        -3.50
-3.00        -3.50
-3.00        -3.50
-3.20        -3.50
-3.20        -3.50
-3.20        -3.50
-3.10        -3.60
-3.30        -3.60
-3.50        -3.60
-3.50        -3.60
-3.50        -3.60
-3.50        -3.60
-3.50        -3.60
-3.50        -3.70
-3.50        -3.70
-3.70        -3.70
-3.70        -3.70
-3.90        -3.70
-3.90        -3.70
-3.90        -3.70
-3.80        -3.70
-3.80        -3.70
-3.80        -3.70
-3.90        -3.70
-3.80        -3.70
-3.90        -3.70
-3.90        -3.80
-3.90        -3.80
-3.80        -3.80
-3.70        -3.80
-3.70        -3.80
-3.70        -3.80
-3.70        -3.80
-3.60        -3.80
-3.60        -3.80
-3.50        -3.80
-3.50        -3.80
-3.50        -3.90
-3.60        -3.90
-3.60        -3.90
-3.60        -3.90
-3.70        -3.90
-3.70        -3.90
-3.70        -3.90
-3.80        -3.90
-3.80        -3.90
-3.80        -2.50
-3.70        -2.60
-3.70        -2.80

Czemu on źle to sortuje ? któs mi wytłumaczy ?

Stacja Pogody pracująca na LEDE / Openwrt + arduino. http://dominikowice.one.pl  Pomiar temperatury, ciśnienia, wilgotności  online + wykresy 24 godzinne, 7 dniowe, 30 dniowe, itp. A wszystko to na Routerze NETGEAR WNDR 4300 z wgranym LEDE.

8

Odp: Sqlite3 zmiana ustawień .show i komenda sort

Sortuje dobrze, poczytaj trochę jak sort traktuje dane wejściowe i przejrzyj sobie opcje.

9

Odp: Sqlite3 zmiana ustawień .show i komenda sort

Dzięki Pepe2k za naprowadzenie sort -r i jest teraz dobrze big_smile

Stacja Pogody pracująca na LEDE / Openwrt + arduino. http://dominikowice.one.pl  Pomiar temperatury, ciśnienia, wilgotności  online + wykresy 24 godzinne, 7 dniowe, 30 dniowe, itp. A wszystko to na Routerze NETGEAR WNDR 4300 z wgranym LEDE.

10

Odp: Sqlite3 zmiana ustawień .show i komenda sort

manguscik napisał/a:

Dzięki Pepe2k za naprowadzenie sort -r i jest teraz dobrze big_smile

Oj chyba nie jest, musisz poczytać więcej.

11

Odp: Sqlite3 zmiana ustawień .show i komenda sort

Masz racje big_smile jak temperatura spadła poniżej dwu cyfrowej to źle pokazuje jak znowu dam  sort -nru to prawidłowo pokazuje max ale znowu źle pokazuje minimalna smile sam już nie wiem jak to ustawić czy dla min i max będę rożne parametry ?

Stacja Pogody pracująca na LEDE / Openwrt + arduino. http://dominikowice.one.pl  Pomiar temperatury, ciśnienia, wilgotności  online + wykresy 24 godzinne, 7 dniowe, 30 dniowe, itp. A wszystko to na Routerze NETGEAR WNDR 4300 z wgranym LEDE.

12

Odp: Sqlite3 zmiana ustawień .show i komenda sort

manguscik napisał/a:

Masz racje big_smile jak temperatura spadła poniżej dwu cyfrowej to źle pokazuje jak znowu dam  sort -nru to prawidłowo pokazuje max ale znowu źle pokazuje minimalna smile sam już nie wiem jak to ustawić czy dla min i max będę rożne parametry ?

Kurczę, no weź i doczytaj. Sort traktuje dane jako tekst, na Twoje potrzeby można pokombinować z sortowaniem według kolumn. Raz jeszcze - doczytaj sobie o narzędziu, którego używasz.

13

Odp: Sqlite3 zmiana ustawień .show i komenda sort

Dla osób które mają problem z sortowaniem to trzeba doinstalować pakiet coreutils-sort i pźniej sortować jako sort -g

dla przykładu :

root@OpenWrt:~# cut -d' ' -f8   /tmp/meteo/dane24.txt | sort -g | head -1
-15.90
root@OpenWrt:~# cut -d' ' -f8   /tmp/meteo/dane24.txt | sort -g | tail -1
-2.40
root@OpenWrt:~#

f8 numer kolumny w pliku dane24.txt

head -1 temperatura minimalna

tail -   1 temperatura maksymalna

Może komu się przyda smile

Stacja Pogody pracująca na LEDE / Openwrt + arduino. http://dominikowice.one.pl  Pomiar temperatury, ciśnienia, wilgotności  online + wykresy 24 godzinne, 7 dniowe, 30 dniowe, itp. A wszystko to na Routerze NETGEAR WNDR 4300 z wgranym LEDE.