Archiwum Kategorii: MySQL

Index na wielu polach, a kolejność tych pól

Dzisiaj walczyłem z dość prostym, aczkolwiek powolnym zapytaniem SQL. Problem pewnie polegał na tym, że dane były pobierane z tabeli o ~50k rekordach, sortowane, grupowane itd.

Owe zapytanie wyglądało mniej więcej tak:

Co ciekawe to zapytanie było strasznie powolne – … Więcej

Opublikowano w MySQL | Otagowano jako , | 2 Komentarze

Sumowanie pól, które mogą mieć wartość NULL

Niedawno odkryłem dość irytujący problem w MySQL. Otóż okazuje się, że nie można sumować wartości NULL z dowolną cyfrą. Wynik takiego zapytania:

Zwróci nam wartość NULL. Jak na mój chłopski rozum to powinna być wartość 5. Ten mały problem, może … Więcej

Opublikowano w MySQL | 7 Komentarze

Małe a cieszy – czyli do czego może się przydać COUNT(DISTINCT …)

O rety.. Przeszedłem długą drogę, JOIN.. GROUP BY.. FROM (SELECT …) i oczywiście i tak nie chciało działać.. A potrzebowałem pewnej prostej rzeczy, którą opiszę na prostym przykładzie: w bazie trzymam n-zamówień, zaś każde zamówienie może być podzielone na x-części, … Więcej

Opublikowano w MySQL | 1 Komentarz

Presja czasu czyli złośliwości timestampa w MySQL

Niedawno natrafiłem na dosyć osobliwy problem podczas definiowania kolumn w jednej z tabeli. Okazuje się, że wszystkim dobrze znany (mam taką nadzieję:)) typ TIMESTAMP rządzi się swoimi własnymi prawami i potrafi w pewnych sytuacjach namieszać dość konkretnie. O co chodzi? … Więcej

Opublikowano w MySQL | 1 Komentarz

Wykorzystanie ceny brutto w rachunkach aplikacji

W naszych serwisach bardzo często pojawia się zarządzanie cenami różnych produktów (wyliczanie cen, stawek VAT oraz innych skomplikowanych obliczeń). W większości przypadków podstawą jest cena netto, natomiast problem pojawia się, kiedy klient zażyczy aby podstawą była cena brutto!… Więcej

Opublikowano również w PHP | 4 Komentarze