Cześć Mirki. Ostatnio poznałem nowe zaklęcie #bazydanych #sql, np:

GROUP_CONCAT( DISTINCT CONCAT_WS(',', categories.id, categories.name ) SEPARATOR ';' ) AS category
Rzecz w tym, że obecnie w praktyce znajduję tylko jedno, szczególne zastosowanie: Gdy wyświetlając listę wyników, dla każdego z wyniku z osobna potrzebuję wyświetlić podlistę ( np.: relacji 1-do-wielu, lub wiele-do-wielu ). Ma ktoś może przykład innego zastosowania GROUP-CONCAT z/bez CONCAT-WS ?
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

[Baza danych Oracle]

Użytkownik, który korzysta z dblinka odwołującego się do bazy MS SQL Server zgłosił mi taki błąd:
"[FreeTDS][SQL Server]Invalid cursor state {24000}
ORA-02063: preceding 2 lines from DBAX
28500. 00000 - "connection from ORACLE to a non-Oracle system returned this message:"
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@DinapeS: często transakcje rozproszone, sprawdź:
select localtranid, state from dba2pcpending;
ale przede wszystkim - jak kolega wyżej - włączyć tracing w $ORACLE_HOME/HS i popatrzeć co się dzieje dokładnie.
  • Odpowiedz
Mam takie pytanie dotyczące rynku. Przeglądam oferty pracy związane z bazami danych aby mieć jako taki ogląd co trzeba umieć w kontekście szukania pracy. W większości ofert spotykam się z bazami MS albo Oracle. Natomiast bardzo rzadko widzę MySQL. Ogólnie swoją naukę sql i ogólnie baz (jako teorii) prowadziłem w MySQL dopinając do tego python'a. I zastanawiam się czy w takim układzie nie skupić na bazach Microsoft'u i Oracle'a bo łatwiej będzie
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@vaars: Nie ma tak, że firma korzysta tylko z jednego dostawcy i koniec. Aktualnie w swojej pracy korzystam z MS, Oracle, Mysql, Mariadb, Postgresql, przy czym MS jest hurtownią i do niej wszystko zgrywam.
Ucz się MS, bo to najbardziej przyjazna baza i szeroko wykorzystywana do hurtowni i bi, a to teraz jest w modzie. Obróbka danych.
  • Odpowiedz
@semyel: takie książki trzeba dobierać pod dany rdbms. Do t-sql polecam Funkcje okna w języku T-SQL dla SQL Server 2019 albo Zapytania w języku T-SQL w Microsoft SQL Server 2014 i SQL Server 2012, Itzik Ben-Gan.
  • Odpowiedz
Jest w sqlite IFNULL dla wielu wartosci. Chce sprawdzic ktory z rekordow (wszystkie rekordy ktore wybralem) ma wartosc NULL i jesli ma to wpisac 'Not known'. Moge to zrobic niby wpisujac do kazdego rekordu osobno IFNULL ale pewnie da sie to zrobic za jednym zamachem. #sql #programowanie
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Który operator służy do wyświetlania części wspólnej dwóch tabel?
- INTERSECT
- JOIN
- oba

Wg mnie można oboma operatorami uzyskać część wspólną, ale chciałbym zapytać o wasze zdanie
#sql #mysql #bazydanych
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Nullek: bazy danych wywodza sie z teorii zbiorow. Intersect to czesci wspolne zbiorow, Join to laczenie zbiorow. Troche teorii nigdy nie zawadzi ;) Twoja odpowiedzia jest INTERSECT
  • Odpowiedz
Mirki, w jaki sposób zautomatyzować proces zmiany konfiguracji w bazie za pomocą Azure DevOps?

Załóżmy, że napisałem skrypt SQLowy, który robi jakieś aktualizacje w danej tabeli. Czy istnieje jakieś narzędzie, które po zmergowaniu automatycznie połączyłoby się z bazą i odpaliłoby skrypt?

Jeden skrypt = aktualizacja jednej tabeli
Jeden pull request = jeden lub więcej skryptów.
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#sql #oracle

Pracuje sobie na tych danych od oracle i mam takie zadanie od prowadzace
2. Pokaż nazwiska pracowników i informację o stażu pracy.
Osoby zatrudnione:
w 1990 roku z komentarzem-długoletni pracownik
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Wykop Mobilny (Android)
  • 0
Wykluczyłem sobie selectem pewne dane dla zamówień. Chciałem dowiedzieć się kto ostatni pakował zamówienie więc połączyłem sobie dwie tablice. Niestety niektore zamowienia miały więcej niż jedną osobę pakujaca. Jak zostawić tylko wpis z najświeższą data pakowania? W tablicy od logow mam kolumnę z datreg gdzie jest godzina ostatniego pakowania

Próbowałem max(XXXX), ale nic z tego.

#sql
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@magucio: cross apply z logów do zamówień z order by data malejąco coś w stylu
FROM zamowienie
CROSS APPLY
(SELECT TOP 1 pakowacz from logipakowania where idzamoweinia = idzamowienia order by data desc)
  • Odpowiedz
mam gotowe klasy i context w projekcie do nowej bazy przy podejsciu code first, i przy uruchomieniu dostaje błąd

No database provider has been configured for this DbContext

Gdzie mam dostarczyć connectionStringa żeby podczas uruchomienia utworzyło mi nową baze danych wypełnioną encjami które sobie wpisałem w main?
apka w ef core
bo mi sie wydaje, czy można to było zrobić poleceniem w konsoli menadzera pakietów?
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki i mirabelki z #oracle #plsql i może #sql
Mam prawdopodobnie proste pytanie dotyczące odczytywania wartości number z json (oracle version up 18)

O ile takie coś w #sql:

SELECT JSON_VALUE('{"VALUE_NUMBER": "123.45"}','$.VALUE_NUMBER' RETURNING NUMBER) AS V_LICZBA FROM
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mam problem z tworzeniem pytań do bazy. Czy jest jakiś łatwiejszy sposób niż na poniższym przykładzie:

https://pastebin.com/kQVR1Vxd

Rozchodzi mi się o "WHERE" i "AND" przy warunkach, bo nie podoba mi się że muszę aż tyle IF-ów używać, żeby sprawdzić czy ma być WHERE czy AND. W przykładzie dodałem tylko 2 warunki, ale jak jest ich więcej to nie wygląda to zbyt ładnie.

#php #programowanie #sql
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@bla_bla_bla: tak, jest prostszy sposób:

tworzysz sobie tablicę conditions np gdzie wrzucasz każdy warunek, np DATE(year) = :year itp

następnie robisz po prostu $query = "SELECT * FROM intakes WHERE " . implode($conditions, " AND ") i tyle
  • Odpowiedz
Jak najlepiej nauczyć się czytelnie i wydajnie pisać zapytania SQL?

Macie może coś godnego polecenia w tym temacie?

Kursy na pluralsight z dołączonymi bazami to niestety zbyt słaby poziom. Potrzebowałbym coś bardziej zaawansowanego niż podwójny join i podwójny select.

#sql #programowanie #bazydanych (jakby ktoś jeszcze miał coś pod ręką jak projektować bazy danych to też chętnie przygarnę)
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@MarceloFerro: piszę to chyba piętnasty raz: polecam rozwiązywanie zadań ze strony https://sql-ex.ru/ - nie udało mi się znaleźć nic lepszego. Po rozwiązaniu każdego z zadań dostajesz dostęp do forum gdzie możesz podejrzeć odpowiedzi innych użytkowników - zwykle są bardzo błyskotliwe więc wiele można się nauczyć poprzez porównanie swojego rozwiązania z innymi
  • Odpowiedz