Czemu MySQL jest popularny, z dedykacją dla @drag_op, @zdalny
#sql #programowanie #webdev #mysql #postgersql

@drag_op: To jest dość skomplikowane. PostgreSQL jest projektem który jest stary, PostgreSQL wywodzi się z projektu Postgres a ten z Ingres, Ingres został zapoczątkowany w 1973 roku gdy jeszcze nikomu się o webdevie nie śniło. W czasach gdy sieć startowała to Postgres był już zaawansowaną
  • 23
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@drag_op: Chodzi o zapytanie SELECT COUNT(*) FROM tbl. Silnik MyISAM dla MySQL nie wspierał transakcji i zapisywał liczbę wierszy dla każdej tabeli dlatego zwracał błyskawicznie wynik, PostgreSQL sprawdzał widoczność każdego wiersza dla aktualnej transakcji przez odwiedzenie krotki na dysku co było bardzo wolne, od 2012 pg wspiera index-only-scan i potrafi zwrócić wynik po przeanalizowaniu indeksu, natomiast MySQL obecnie wspiera transakcje w domyślnym silniku innodb i już tak błyskawiczny nie
  • Odpowiedz
@Zdalny: Nie, bo w MySQL są te same problemy z tym że tam zwykłą odpowiedzią jest "Będzie pan zadowolony". PostgreSQL jest nastawiony na niezwodność i dokładność dlatego trudne problemy typu replikacja master-master są opisywane jako trudne. MySQL jest robiony w myśl zasady "My ze szwagrem po pijaku nie takie rzeczy robili" dlatego trudne problemy są opisywane jako "No przecież jakoś działa".
  • Odpowiedz
W mssql-server ładnie można dodać odbc, podlinkować serwer i wyciągać zapytania z mysql'a. Da się odwrotnie?
Tj. z poziomu mysqla wyciągać selecty bezpośrednio z bazy mssqlowej?

#windowsserver
#linux
#sysadmin
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@drag_op: Bo MySQL nadaje się tylko do prostych aplikacji: nie obsługuje zaawansowanych zapytań, explainy nic absolutnie nie mówią o tym co się dzieje, ma historię masę dziwacznych rozwiązań i potrafi zwracać błędne wyniki w myśl zasady "lepiej zwrócić cokolwiek". Sporo problemów z MySQL jest w deseń "Jak zrobić w MySQL coś co działa na wszystkich innych bazach z sqlite włącznie". Zastawia pułapki na użytkownika, do wersji 5.7 nie obsługiwało poprawnie
  • Odpowiedz
Mireczki polecicie kurs sql od podstaw? Najlpiej na yt i po angielsku - dziekuje bardzo
#sql
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mireczki pytanie do tych, którzy uczyli się Crystal Reports. Możecie polecić jakieś dobre materiały z przykładamy, stronki itp jak przyswoić Crystala. Z góry dzięki za pomoc #sql #pytaniedoeksperta #it
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Plutonowy: Tego bardzo mało jest w internetach bo sapy robią kasę na szkoleniach. Ale Twoje pytanie zadane bardzo ogólnie bo nie wiemy czy chcesz programować, stawiać instalacje serwerową CR i czy masz w ogóle jakieś pojęcie o BI. Z zadanego pytania wnioskuję, że chyba zaczynasz zabawę z BI.
  • Odpowiedz
Jutro rekrutacja do korpo, stanowisko - analityk. Spory nacisk na SQL. Znajomy kiedyś miał pytanie żeby przedstawić 3 sposoby dodawania rekordów do tabeli.

Ja osobiście używam chyba najprostrzego

insert into nazwaTabeli (col1, col2, col3)
values ('wartosc1','wartosc2','warosc3');
#sql
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mireczki polećcie jakaś dobrą książkę do #sql dla początkujących. Ewentualnie jakiś kurs internetowy :)
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@UberWygryw:

Ad 6 - artykuł dlaczego warto żyć i pracować w Szwajcarii, a w nim:

If you shop at Aldi-Suisse, Lidl, Denner, Migros or Coop (ordered from cheap to expensive) and cook for yourself, you don’t have to spend a lot on food.

Once in a while, if you want to eat some crap, you can find trashy, reduced food almost every evening before the
Mokatte - @UberWygryw: 

Ad 6 - artykuł dlaczego warto żyć i pracować w Szwajcarii,...

źródło: comment_XiedEwMPWq6uFOJMD3yxkBa2wo1KDCiI.jpg

Pobierz
  • Odpowiedz
Kurde mirki potrzebuję przełożyć następujące zapytanie sql na query buildera w symfony(doctrine 2), za bardzo w tym nie siedzę, ale akurat trafiło się, że coś takiego potrzebuję.

SELECT * FROM
(
SELECT * FROM message m
GROUP BY m.sent_at, m.conversation_id
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

tak jak @zakopiak napisał, grupuj po wszystkich kolumnach które selectujesz, bo w innym przypadku kolumny nieujęte w group by zwrócą Ci losowe wartości


@bziuuumor: Nie do końca. Musi być spełnione functional dependency czyli należy pogrupować po zestawie kluczy które razem są unikatowe dla całego wiersza. Zakładają że id dla każdej tabel to pk następujące są poprawne:

SELECT
  • Odpowiedz
Pytanko.
Zapytanie do bazy danych stąd

c.execute(''.join([
'SELECT variable.name, variable.module, variable.type, variable.desc ',
'FROM variable, var_func, function ',
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirasy, nawiązując do moich wcześniejszych wpisów:

https://www.wykop.pl/wpis/22437263/mirasy-postanowilem-przejsc-na-b2b-i-zrezygnowac-z/
https://www.wykop.pl/wpis/22916783/mirasy-jakis-czas-temu-wrzucilem-wpis-odnosnie-swo/

Możecie tutaj zadawać pytania, postaram się odpowiedzieć najlepiej jak potrafię na Wasze pytania :) Odpowiadał będę sukcesywnie na pytania dzisiaj, jutro i pojutrze - mam trochę różnych spraw na głowie ostatnio, więc jednym tchem na wszystko nie odpowiem ;)
  • 29
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kuta_senator: jakie masz wykształcenie? Ja mam posade że na te chwile dostaje dane z hurtowni i robię raporty Excel, VBA. Docelowo uczyć się będę SQL i sam te dane z hurtowni sobie wyciągał. I czy z takiego poziomu bazowego da radę się rozwijać w kierunku takim jak Ty? Do tego prócz SQL chce się uczyć w własnym zakresie PowerBi i R
  • Odpowiedz
Mam problem z bazą danych w MySQLu. Wywala mi Undefined index on line 45, 47, 48, 49, 50, 51, 52, 53.
$id = $row['id'];
$tresc = $row['tresc'];
$odpa = $row['odpa'];
$odpb = $row['odpb'];
$odpc = $row['odpc'];
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@murgal: Napisz całe zapytanie jakie masz, z półsłówek trudno coś zrozumieć. Dodatkowo jeśli masz więcej niż 1 kolumnę której nie agregujesz, to wszystkie powinieneś mieć w GROUP BY, a nie tylko jedną
  • Odpowiedz
Znacie jakieś ciekawe książki o tematyce ETL? Najlepiej nakładające dużą wagę na wydajność. Mogą być po angielsku. Jakieś ciekawe PDF też się przydadzą.
#programowanie #sql
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki, taka sprawa dotycząca Accessa. Chciałbym stworzyć formularz, w którym zmiany w bazie dokonywane byłyby nie na bieżąco w momencie wpisywania danych do każdego z pól z osobna ale dopiero po wciśnięciu przycisku (po uprzedniej walidacji). Z tego co zauważyłem bez VBA się nie obędzie. Jak to ogarnąć?
Pytanie numer dwa, jak zrobić aby w każdym rekordzie (dodatkowym polu) pojawiała się również informacja dotycząca użytkownika, który dany rekord stworzył (późniejsza edycja miałaby
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ojsak:
1: Dwie opcje, albo jakiś arkusz/arkusze z listą zmian wysyłanych do bazy po zatwierdzeniu guzikiem, albo ewentualnie program działający cały czas w tle, trzymający te dane np. w arrayu (pętla z DoEvents).
2: Application.UserName wpisywane do pola w tabeli podczas inserta?
  • Odpowiedz
Cześć, zacząłem podstawy SQL z SQLzoo i napotkałem mały problem. Nie rozumiem, dlaczego wynik w tym jest zwrócony dopiero po dodaniu linii: AND y.name != x.name. Dlaczego jest ona niezbędna? Czy ktoś mógłby mi to łopatologicznie wytłumaczyć? Zadanie wygląda w całości tak:
--#10
/*
Some countries have populations more than three times that of any of their neighbours (in the same continent). Give the countries and continents.
*/
SELECT name, continent
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Rugger: żeby do porównania nie brać kraju który sprawdzamy, bo on nigdy nie będzie miał populacji większej niż jego populacja pomnożona * 3. Masz warunek population > ALL ... który da TRUE tylko, jeśli populacja kraju będzie większa od 3krotności WSZYSTKICH krajów z danego kontynentu, więc jeśli nie wykluczysz sprawdzanego kraju, to nigdy nie będzie prawdą, bo zawsze będziesz porównywać x > 3x
  • Odpowiedz
@Rugger: No to się cieszę :) Samego SQLa to uczyłem się z neta, tak jak Ty. Na początku to chyba od Andrzeja Klusiewicza (wcześniej jego stronka o oracle ludzkim głosem), teraz wrzucił to na nową_stronę. Potem głównie książki bardziej o projektowaniu baz, następnie samym Oraclu (bo w tej technologii pracuję odpowiadając na drugie pytanie). Jak ogarniesz SQLa, to fajna książka to np ta antywzorce
  • Odpowiedz