Mirki, dziś na potrzeby nowej pracy podszkoliłem się na własną rękę z #sql i baz danych (pierwsza moja styczność w tych tematach). Robiąc pewne przykłady, napotkałem na problem. Dla Was to pewnie pestka, więc liczę na pomoc. Otóż musiałem zrobić listę nazw ulic przynajmniej częściowo dwujezdniowych. Problem w tym, że ulice są podzielone na odcinki, i niektóre z nich są tylko dwujezdniowe, np. ul. X ma 5 odcinków, z czego
Wszystko
Najnowsze
Archiwum
- 1
- 1
@bebeto39: DISTINCT to zło. Użyj EXISTS jeśli masz joiny tam albo znormalizuj schemat i wtedy użyj EXISTS.
- 1
Skrót piszący literkę "ć" otwiera mi konsolę. Jak to ładnie wyrzucić ze skrótów?
#phpmyadmin #php #sql
#phpmyadmin #php #sql
- 1
#sql #naukaprogramowania
Mirki mam dwie tabele: teacher i subject. Oraz trzecią która łączy mi nauczycieli z przedmiotami: subjecthasteacher. Insertem połączyłem sobie każdego nauczyciela z każdym przedmiotem który uczy. Teraz chcę sobie wypisać te dane tzn. name i lastname z tabeli teacher oraz name z tabeli subject. Tak, żebym miał np. "Anna Nowak Matematyka". Zrobiłem takiego SELECTa:
Mirki mam dwie tabele: teacher i subject. Oraz trzecią która łączy mi nauczycieli z przedmiotami: subjecthasteacher. Insertem połączyłem sobie każdego nauczyciela z każdym przedmiotem który uczy. Teraz chcę sobie wypisać te dane tzn. name i lastname z tabeli teacher oraz name z tabeli subject. Tak, żebym miał np. "Anna Nowak Matematyka". Zrobiłem takiego SELECTa:
@Patres: Jest ok :) Możesz też użyć jawnie JOINów i zamiast podawać kilka tabel po FROM połączyć je po klauzuli JOIN (wynik oczywiście ten sam, czytelność kodu trochę lepsza z jawnym JOINem)
edit:
do tego polecam stosować aliasy na tabelach, żeby nie robić takich tasiemców
teacher.id = subjecthasteacher.teacherid
edit:
do tego polecam stosować aliasy na tabelach, żeby nie robić takich tasiemców
teacher.id = subjecthasteacher.teacherid
- 1
@Patres: A tak nie lepiej :
SELECT t.firstname
,t.lastname
,s.NAME
FROM teacher t
LEFT JOIN subjecthasteacher sh ON t.id = sh.teacherid
LEFT JOIN subject s ON sh.subjectid = s.id
SELECT t.firstname
,t.lastname
,s.NAME
FROM teacher t
LEFT JOIN subjecthasteacher sh ON t.id = sh.teacherid
LEFT JOIN subject s ON sh.subjectid = s.id
- 1
Mirki jaka jest różnica pomiędzy podzapytaniem kolumnowym za wierszowym? #sql #bazydanych
- 2
#sql #naukaprogramowania
Mirki czytałem, żeby id w tablicach były typu int. Ale jak np. teraz sobie tworzę bazy danych szkoły i mam tablice przedmiot oraz nauczyciel, które są w relacji n:n to chyba łatwiej by mi było stworzyć id typy varchar i dawać je do wspólnej tabeli:
insert into nauczyciel-przedmiot values(KOWALSKA, MATM); zamiast z intami:
insert into nauczyciel-przedmiot values(12, 3);
Czy w takiej sytuacji lepiej używać id typu
Mirki czytałem, żeby id w tablicach były typu int. Ale jak np. teraz sobie tworzę bazy danych szkoły i mam tablice przedmiot oraz nauczyciel, które są w relacji n:n to chyba łatwiej by mi było stworzyć id typy varchar i dawać je do wspólnej tabeli:
insert into nauczyciel-przedmiot values(KOWALSKA, MATM); zamiast z intami:
insert into nauczyciel-przedmiot values(12, 3);
Czy w takiej sytuacji lepiej używać id typu
- 1
@Patres: Klucz główny tabeli powinien:
- być niezmienny
- być unikalny
Nie posiadasz kluczy naturalnych w tabeli które spełniają te warunki, użyj klucza sztucznego.
@M4ks Takie sytuacje są bardzo rzadkie i o ile można wspomieć o takiej możliwości lepiej dla wszystkich będzie jeśli osoby bez zaawansowanej wiedzy będą trzymały się integerów (tinyint, bigint, int, serial i inne).
- być niezmienny
- być unikalny
Nie posiadasz kluczy naturalnych w tabeli które spełniają te warunki, użyj klucza sztucznego.
@M4ks Takie sytuacje są bardzo rzadkie i o ile można wspomieć o takiej możliwości lepiej dla wszystkich będzie jeśli osoby bez zaawansowanej wiedzy będą trzymały się integerów (tinyint, bigint, int, serial i inne).
@plushy: ja po prostu nie lubię stwierdzeń typu "PK tylko integer", bo to i nieprawda i bezsens. Czasem przydają sie np klucze złożone etc. Nie warto po prostu rzucać definitywnych stwierdzeń, bo jeszcze komuś zostanie i będzie kiepsko
#sql #pl/sql #naukaprogramowania
cześć mam problem z jednym zadaniem. Napiszcie co robię źle.
cześć mam problem z jednym zadaniem. Napiszcie co robię źle.
Znajdź studenta z najwyższą średnią ocen
konto usunięte via Android
- 2
- 1
@ugotowany_kamien: Trochę nie ogarniasz co?
Mireczki z #sql pomóżcie :(
Mam 3 tabele: locations, locationviews oraz locationratings. Chcę pobrać nazwę z locations, policzyć rekordy w locationviews(do 1 rekordu w locations może być wiele w locationviews) oraz średnią ocenę z tabeli locationratings(też jeden do wielu). Testowo mam 2 rekordy w locationviews a w rezultacie COUNT zwraca, że są 4 :/
Co robię
Mam 3 tabele: locations, locationviews oraz locationratings. Chcę pobrać nazwę z locations, policzyć rekordy w locationviews(do 1 rekordu w locations może być wiele w locationviews) oraz średnią ocenę z tabeli locationratings(też jeden do wielu). Testowo mam 2 rekordy w locationviews a w rezultacie COUNT zwraca, że są 4 :/
Co robię
@filipsiu: Czyli coś jest źle zgrupowane. Przeklej do group by kolumny, które masz w select.
możesz to zrobić podzapytaniem np. Select locations.name, (select count(id) from views where locationid = locations.id) as x from locationviews where locations.id=2
Nie wiem dlaczego wywala mi blad
Syntax error (missing operator) in quiery expression 'b.amount from aapostepay b join a on a.annotazione = b.transactionid'
UPDATE registrazionecogedettaglio a
SET a.importo = b.amount- 1
@Ginden: Ok udalo sie, poprawny kod to:
UPDATE registrazionecogedettaglio a
INNER JOIN aapostepay b
ON a.annotazione = b.transactionid
SET a.importo- 3
@Bodhistawa: po prostu ją pomiń pod warunkiem że jest identity
- 0
@kovalski: Dzięki!
Baza NoSQL do analizy logów z poziomu .NET. Kilka-kilkanaście GB dziennie. Co powinienem wybrać?
IMHO Cassandra jest najlepszym wyborem, ale nie wiem czy mądrze.
#nosql #bazydanych #sql
IMHO Cassandra jest najlepszym wyborem, ale nie wiem czy mądrze.
#nosql #bazydanych #sql
Mirki pomóżcie bo tracę już wiarę, że to zadziała...
Mam 2 tabele, chcę połączyć dane by w rezultacie wypisać treść komentarza z 1 tabeli i ocenę z 2 tabeli łącząc je po userid. Warunkiem jest idlokacji do której wyświetlane są rekordy.
Mam takie zapytanie:
SELECT * FROM locationcomments JOIN locationratings ON locationratings.userid = locationcomments.authorid WHERE
Mam 2 tabele, chcę połączyć dane by w rezultacie wypisać treść komentarza z 1 tabeli i ocenę z 2 tabeli łącząc je po userid. Warunkiem jest idlokacji do której wyświetlane są rekordy.
Mam takie zapytanie:
SELECT * FROM locationcomments JOIN locationratings ON locationratings.userid = locationcomments.authorid WHERE
źródło: comment_Cr2pmqqvwY0YR4pcPg4F3brvV99tYaBW.jpg
Pobierz- 1
@MintajWKwadracie: @bios16: nie pomogło
@darco3: Wielkie dzięki! Uratowałeś mi wiele godzin męczarni z tym błędem! :)
@darco3: Wielkie dzięki! Uratowałeś mi wiele godzin męczarni z tym błędem! :)
@filipsiu: następnym razem wrzuć na mirko pod ten tag , jest tu paru gości do pomocy, którzy często nie zgadzają na różne tematy, ale w tym tagu są zgodni ( ͡° ͜ʖ ͡°)
Mam plik .MDB ale nie mam Accessa.
Chce usunac ok 20tys wierszy z tego pliku, moge to jakos zaimportowac do SQL Express albo otworzyc przez Excela? Probowalem przez import danych z innego zrodla> Access, ale mam do wyboru milion tabel wiec nie bardzo idzie, poza tym musze to potem spowrotem zapisac w formie .MDB zeby program do ksiegowosci z ktorego korzystam mogl go wczytac.
Problem jest taki, ze w programie do ksiegowosci wiersze moge
Chce usunac ok 20tys wierszy z tego pliku, moge to jakos zaimportowac do SQL Express albo otworzyc przez Excela? Probowalem przez import danych z innego zrodla> Access, ale mam do wyboru milion tabel wiec nie bardzo idzie, poza tym musze to potem spowrotem zapisac w formie .MDB zeby program do ksiegowosci z ktorego korzystam mogl go wczytac.
Problem jest taki, ze w programie do ksiegowosci wiersze moge
@entaroadun: powinno dać radę spokojnie z Excela ja w vba pisałem macra które otwierały plik z bazą i robiły na niej różne Select.
Możesz zrobić coś w stylu:
dim objAccess As Object
set objAccess
Możesz zrobić coś w stylu:
dim objAccess As Object
set objAccess
@entaroadun: tutaj masz gotowca z Microsoft, panien tylko dane do połączenia i treść CommandText i powinno pójść
https://support.microsoft.com/en-us/kb/181734#/en-us/kb/181734
https://support.microsoft.com/en-us/kb/181734#/en-us/kb/181734
- 0
Treść przeznaczona dla osób powyżej 18 roku życia...
@el-em: super
#naukaprogramowania #sql #plsql #oracle
Witajcie SQL-owi przyjaciele, mam zadanie do rozwiązania i nie wiem gdzie popełniłem błąd.
Zadanie:
moje
Witajcie SQL-owi przyjaciele, mam zadanie do rozwiązania i nie wiem gdzie popełniłem błąd.
Zadanie:
Wypisz imiona, nazwiska i stopnie naukowe wszystkich dydaktyków. Uwzględnij dydaktyków, którzy nie mają stopnia.
moje
- 3
Komentarz usunięty przez autora
@ugotowany_kamien: left join zamiast join w łączeniu stopnietytuly
Cześć Mirko #programowanie #sql #debian #linux. Mam postawioną baze w postgresql, i skrypty które odpalają się cyklicznie i wrzucają do bazy jakieś tam dane (troche ważne). Problem w tym, że po niecałych ~~12h działania skryptów muszę restartować baze, bo zapytania wykonują się strasznie długo (właściwie wcale sie nie wykonują). Po restarcie service`u wszystko jest super ok, ale jakoś nie widzi mi się restartowanie
konto usunięte via Android
- 1
- 0
@Ginden: Jakby ktoś był zainteresowany co to było:
sprawdzałem czy stronka odpowiada pobierając jej zawartość GETem, ale nie miałem timeoutu. Cron odpalał kolejne skrypty i rura sie zapychała. Ustawienie timeoutu stronki załatwiło problem. ( ͡° ͜ʖ ͡°)
sprawdzałem czy stronka odpowiada pobierając jej zawartość GETem, ale nie miałem timeoutu. Cron odpalał kolejne skrypty i rura sie zapychała. Ustawienie timeoutu stronki załatwiło problem. ( ͡° ͜ʖ ͡°)
- 2
Jak chcę w #sqlite żeby mi automatycznie razem z danymi wstawiało indeks (primary key, automatycznie inkrementowany) to muszę w pole id wstawiać NULL (z tego co zrozumiałem), czyli np.
Jak wstawić do takiej tabeli wynik zapytania i jednocześnie tego nulla dla id, żeby się automatycznie indeks robił? czyli coś w stylu
insert into jakasTabela (id, kolumna1) values (NULL,123)Jak wstawić do takiej tabeli wynik zapytania i jednocześnie tego nulla dla id, żeby się automatycznie indeks robił? czyli coś w stylu
insert into jakasTabela (id, kolumna1, kolumna2) select from ....... ale id wszędzie#bazydanych #sql #tsql
Dostaje msg 207 'Invalid column name', ktoś pomoże :>
DECLARE @max MONEY
SET @max = MAX(wyplata)Dostaje msg 207 'Invalid column name', ktoś pomoże :>
konto usunięte via Android
- 2
- 0
@Ginden: zadziałało :)
#sql #progamowanie #pomocy
Mam zadanie:
Przygotuj widok ModeleAuta zawierający wszystkie pola z tabeli Auta oraz wszystkie niemal pola z tabeli Modele (oprócz identyfikatora) (użyj INNER JOIN)
Nie wiem jak sformułować zapytanie. Pomożecie?
Mam zadanie:
Przygotuj widok ModeleAuta zawierający wszystkie pola z tabeli Auta oraz wszystkie niemal pola z tabeli Modele (oprócz identyfikatora) (użyj INNER JOIN)
Nie wiem jak sformułować zapytanie. Pomożecie?
źródło: comment_dYYo29RGbnuz9rn4cFaC7g0FrKbJPmx2.jpg
Pobierz- 2
generalnie się powinno stosować joiny. uniony za dużo zasobów zżerają
@seeksoul: Że co? Poza tym, że to całkiem różne operatory to joiny są znacznie bardziej kosztowne niż union all.
- 9
@marek_antoniusz: ON a nie AS
@marek_antoniusz: ON nie AS

















Fajna promocja na ebooka Oracle Database 12c i SQL. Programowanie Jason Price
http://ebookpoint.pl/ksiazki/oracle-database-12c-i-sql-programowanie-jason-price,ord12p.htm