• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zamiana "0" na "-" przy pobieraniu danych z mysql

Object Storage Arubacloud
+2 głosów
239 wizyt
pytanie zadane 23 grudnia 2022 w SQL, bazy danych przez rycho84 Nowicjusz (230 p.)

Witam,

chciałbym zapytać o następującą rzecz. Mam bazę danych w której bardzo często zapisane jest "0". Po wczytaniu na stronę wygląda to tak.

I tutaj moje pytanie, czy jest jakaś możliwość, aby przy wczytywaniu na stronę wszystkie "0" zamienić na np"-"?

Chodzi o to aby tabela była czytelna.

3 odpowiedzi

+1 głos
odpowiedź 25 grudnia 2022 przez VBService Ekspert (253,120 p.)
wybrane 25 grudnia 2022 przez rycho84
 
Najlepsza

Może użyj css do zmiany wyglądu komórki z wartością 0, np. on-line.

1
komentarz 25 grudnia 2022 przez rycho84 Nowicjusz (230 p.)
Dzięki serdecznie wszystkim za podpowiedzi. Rozwiązanie z CSS-em jest chyba najlepszym rozwiązaniem dla mnie, bo dość dobrze pasuje do mojego poziomu programowania :-)

Po dopasowaniu do mojego przykładu, czytelność tabeli jest super.

Dziękuję wszystkim za pomoc.

Pozdrawiam
+1 głos
odpowiedź 23 grudnia 2022 przez SzkolnyAdmin Szeryf (86,360 p.)
Tak, po pobraniu danych podczas tworzenia tabeli sprawdzasz, czy w aktualnie przetwarzanym wpisie znajduje się liczba 0. Jeżeli tak, do komórki tabeli wpisujesz myślnik, a przeciwnym razie pobraną liczbę.

To tylko jedna z możliwości, jakbyś pokazał kod, byłoby łatwiej o właściwe rozwiązanie.
+1 głos
odpowiedź 23 grudnia 2022 przez Wiciorny Ekspert (269,710 p.)

zrób to  już po stronie aplikacji- w serwisie który odbiera dane, po prostu jesli dane będą takie jak oczekujesz "tutaj 0" to - zamień ten element na oczekiwany "-".
Z poziomu zapytania można to zrealizować, natomiast jest  to bardzo nieefektywne bo jednak ingeruje w samo zapytanie, na wielkich zbiorach danych problem rośnie 
https://stackoverflow.com/questions/48638229/how-can-i-replace-the-null-or-0-value-to-dash

Aby w SQL zamienić wynik 0 na myślniki, możesz użyć funkcji COALESCE. Funkcja COALESCE przyjmuje listę argumentów i zwraca pierwszą wartość nie-NULL z listy.
Jeśli wszystkie wartości na liście są NULL, COALESCE zwraca NULL.

aby zamienić wynik 0 na myślniki w poleceniu SELECT:
 

SELECT COALESCE(nazwa_kolumny, '-') AS nazwa_kolumny
FROM nazwa_tabeli
WHERE warunek;

Aby zamienić wszystkie wyniki 0 na myślniki dla wielu wierszy w tabeli w SQL, możesz użyć funkcji COALESCE w połączeniu z instrukcją UPDATE
 

UPDATE nazwa_tabeli
SET kolumna = COALESCE(kolumna, '-')
WHERE kolumna = 0;

Ostatecznie aby pobrać dane z tabeli jako SELECT i zamienić zera na myślniki, możesz użyć funkcji COALESCE w połączeniu z instrukcją SELECT. Oto przykład, jak to zrobić:
 

SELECT COALESCE(kolumna, '-') AS kolumna
FROM nazwa_tabeli
WHERE warunek;

Możesz również dodać warunek WHERE, i w ten sposób ograniczyć zakres wyników do określonych wierszy w tabeli.
Natomiast polecam jednak pobrac "naturalnie dane za pomocą sql" i zrobić to po stronie serwisu odbierającego dane. 

Podobne pytania

0 głosów
1 odpowiedź 149 wizyt
pytanie zadane 15 października 2023 w SQL, bazy danych przez Piotrek2713 Mądrala (5,340 p.)
0 głosów
1 odpowiedź 335 wizyt
pytanie zadane 31 maja 2022 w PHP przez bartolomeusz80 Nowicjusz (140 p.)
0 głosów
1 odpowiedź 1,980 wizyt

92,556 zapytań

141,404 odpowiedzi

319,560 komentarzy

61,942 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...