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

Inner join, sql

Object Storage Arubacloud
0 głosów
222 wizyt
pytanie zadane 5 maja 2021 w SQL, bazy danych przez Ciasteczko:) Początkujący (490 p.)

Witam! Próbuję pisać zapytania z joinem, ale zbytnio mi to nie wychodzi. Wciąż pokazuje tak błąd:

  Error Code: 1146. Table 'mydb.nazwa_zakładu' doesn't exist   

Ma ktoś jakiś pomysł jak to naprawić?

Błąd dotyczy punktu 6 który jest praktycznie na samym dole kodu

-- MySQL Script generated by MySQL Workbench
-- Tue Apr 20 10:01:30 2021
-- Model: New Model    Version: 1.0
-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
DROP SCHEMA IF EXISTS `mydb` ;

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
USE `mydb` ;

-- -----------------------------------------------------
-- Table `mydb`.`Fryzjerzy`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Fryzjerzy` (
  `idFryzjerzy` INT NOT NULL,
  `Imię` VARCHAR(45) NULL,
  `Nazwisko` VARCHAR(45) NULL,
  `Płeć` VARCHAR(45) NULL,
  `Telefon` INT NULL,
  `E-mail` VARCHAR(45) NULL,
  PRIMARY KEY (`idFryzjerzy`))
ENGINE = InnoDB;

INSERT INTO Fryzjerzy VALUES ('1','Jan', 'Kowalski', 'm', '111222333', 'jan.kowalski@o2.pl');
INSERT INTO Fryzjerzy VALUES ('2','Marek', 'Towarek', 'm', '222444666', 'marek.towarek@o2.pl');
INSERT INTO Fryzjerzy VALUES ('3','Magda', 'Maczek', 'k', '123456789', 'magda.maczek@o2.pl');
INSERT INTO Fryzjerzy VALUES ('4','Ola', 'Opona', 'k', '987654321', 'ola.opona@o2.pl');
INSERT INTO Fryzjerzy VALUES ('5','Kamila', 'Ślimak', 'k', '456789123', 'kamila.slimak@o2.pl');
INSERT INTO Fryzjerzy VALUES ('6','Małgorzata', 'Drzewko', 'k', '198365703', 'malgorzata.drzewko@o2.pl');
INSERT INTO Fryzjerzy VALUES ('7','Adam', 'Lampka', 'm', '908596237', 'adam.lampka@o2.pl');
INSERT INTO Fryzjerzy VALUES ('8','Mateusz', 'Mata', 'm', '465912401', 'mateusz.mata@o2.pl');
INSERT INTO Fryzjerzy VALUES ('9','Luna', 'Laguna', 'k', '597374036', 'luna.laguna@o2.pl');
INSERT INTO Fryzjerzy VALUES ('10','Paweł', 'Mruczek', 'm', '777999000', 'pawel.mruczek@o2.pl');

-- -----------------------------------------------------
-- Table `mydb`.`Pracownicy`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Pracownicy` (
  `Nazwa_zakładu` VARCHAR(100) NULL,
  `Miejscowość` VARCHAR(50) NULL,
  `Fryzjerzy_idFryzjerzy` INT NOT NULL,
  PRIMARY KEY (`Fryzjerzy_idFryzjerzy`),
  CONSTRAINT `fk_Pracownicy_Fryzjerzy1`
    FOREIGN KEY (`Fryzjerzy_idFryzjerzy`)
    REFERENCES `mydb`.`Fryzjerzy` (`idFryzjerzy`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;

INSERT INTO Pracownicy VALUES ('Zakład fryzjerski pod Różą', 'Białystok', '1');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski pod Różą', 'Białystok', '2');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski Atelier', 'Warszawa', '3');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski Atelier', 'Warszawa', '4');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski Loczki', 'Olsztyn', '5');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski Loczki', 'Olsztyn', '6');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski Uczesani', 'Lublin', '7');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski Uczesani', 'Lublin', '8');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski Szalone nożyczki', 'Siemiatycze', '9');
INSERT INTO Pracownicy VALUES ('Zakład fryzjerski Szalone nożyczki', 'Siemiatycze', '10');


-- -----------------------------------------------------
-- Table `mydb`.`Miejsce_wizyty`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Miejsce_wizyty` (
  `idMiejsce` INT NOT NULL,
  `NazwaZakładuFryzjerskiego` VARCHAR(45) NULL,
  `Miejscowość` VARCHAR(45) NULL,
  `Ulica` VARCHAR(45) NULL,
  `KodPocztowy` VARCHAR(10) NULL,
  PRIMARY KEY (`idMiejsce`))
ENGINE = InnoDB;

INSERT INTO Miejsce_wizyty VALUES ('1','Zakład fryzjerski pod Różą', 'Białystok', 'Fryzjerska 6', '15-003');
INSERT INTO Miejsce_wizyty VALUES ('2','Zakład fryzjerski Atelier', 'Warszawa', 'Miodowa 34', '01-015');
INSERT INTO Miejsce_wizyty VALUES ('3','Zakład fryzjerski Loczki', 'Olsztyn', 'Piernikowa 10', '10-004');
INSERT INTO Miejsce_wizyty VALUES ('4','Zakład fryzjerski Uczesani', 'Lublin', 'Mleczna 28', '20-120');
INSERT INTO Miejsce_wizyty VALUES ('5','Zakład fryzjerski Szalone nożyczki', 'Siemiatycze', 'Kolorowa 99', '17-300');


-- -----------------------------------------------------
-- Table `mydb`.`Cennik`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Cennik` (
  `idCena` INT NOT NULL,
  `Cena`  VARCHAR(45) NULL,
  PRIMARY KEY (`idCena`))
ENGINE = InnoDB;

INSERT INTO Cennik VALUES ('1','15zł');
INSERT INTO Cennik VALUES ('2','30zł');
INSERT INTO Cennik VALUES ('3','100zł');
INSERT INTO Cennik VALUES ('4','500zł');
INSERT INTO Cennik VALUES ('5','50zł');
INSERT INTO Cennik VALUES ('6','200zł');
INSERT INTO Cennik VALUES ('7','90zł');

-- -----------------------------------------------------
-- Table `mydb`.`Typ_wizyty`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Typ_wizyty` (
  `idTypWizyty` INT NOT NULL,
  `Nazwa` VARCHAR(45) NULL,
  `CzasWizytyWPrzybliżeniu`  VARCHAR(45) NULL,
  `Cennik_idCena` INT NOT NULL,
  PRIMARY KEY (`idTypWizyty`, `Cennik_idCena`),
  INDEX `fk_Typ_wizyty_Cennik1_idx` (`Cennik_idCena` ASC),
  CONSTRAINT `fk_Typ_wizyty_Cennik1`
    FOREIGN KEY (`Cennik_idCena`)
    REFERENCES `mydb`.`Cennik` (`idCena`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;

INSERT INTO Typ_wizyty VALUES ('1','Szybkie cięcie', '15min', '1');
INSERT INTO Typ_wizyty VALUES ('2','Cięcie normalne', '20min', '2');
INSERT INTO Typ_wizyty VALUES ('3','Ułożenie włosów', '120min', ' 3');
INSERT INTO Typ_wizyty VALUES ('4','Keratynowe prostowanie włosów', '300min', '4');
INSERT INTO Typ_wizyty VALUES ('5','Grzywka', '25min', '5');
INSERT INTO Typ_wizyty VALUES ('6','Farbowanie włosów', '150min', '6');
INSERT INTO Typ_wizyty VALUES ('7','Loki', '100 min', '7');


-- -----------------------------------------------------
-- Table `mydb`.`Godzina_wizyt`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Godzina_wizyt` (
  `idGodzina` INT NOT NULL,
  `Godzina` VARCHAR(45) NULL,
  PRIMARY KEY (`idGodzina`))
ENGINE = InnoDB;

INSERT INTO Godzina_wizyt VALUES ('1','8:00');
INSERT INTO Godzina_wizyt VALUES ('2','9:00');
INSERT INTO Godzina_wizyt VALUES ('3','10:00');
INSERT INTO Godzina_wizyt VALUES ('4','11:00');
INSERT INTO Godzina_wizyt VALUES ('5','12:00');
INSERT INTO Godzina_wizyt VALUES ('6','13:00');
INSERT INTO Godzina_wizyt VALUES ('7','14:00');
INSERT INTO Godzina_wizyt VALUES ('8','15:00');
INSERT INTO Godzina_wizyt VALUES ('9','16:00');
INSERT INTO Godzina_wizyt VALUES ('10','17:00');


-- -----------------------------------------------------
-- Table `mydb`.`Klienci`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`Klienci` (
  `idKlienci` INT NOT NULL,
  `Imię` VARCHAR(45) NULL,
  `Nazwisko` VARCHAR(45) NULL,
  `Płeć` VARCHAR(45) NULL,
  `Telefon` INT NULL,
  `E-mail` VARCHAR(45) NULL,
  `Data_zaplanowanej_wizyty` VARCHAR(45) NULL,
  `Miejsce_wizyty_idMiejsce` INT NOT NULL,
  `Typ_wizyty_idTypWizyty` INT NOT NULL,
  `Godzina_wizyt_idGodzina` INT NOT NULL,
  `Fryzjerzy_idFryzjerzy` INT NOT NULL,
  PRIMARY KEY (`Miejsce_wizyty_idMiejsce`, `Typ_wizyty_idTypWizyty`, `Godzina_wizyt_idGodzina`, `Fryzjerzy_idFryzjerzy`, `idKlienci`),
  INDEX `fk_Klienci_Typ_wizyty1_idx` (`Typ_wizyty_idTypWizyty` ASC),
  INDEX `fk_Klienci_Godzina_wizyt1_idx` (`Godzina_wizyt_idGodzina` ASC),
  INDEX `fk_Klienci_Fryzjerzy1_idx` (`Fryzjerzy_idFryzjerzy` ASC),
  CONSTRAINT `fk_Klienci_Miejsce_wizyty`
    FOREIGN KEY (`Miejsce_wizyty_idMiejsce`)
    REFERENCES `mydb`.`Miejsce_wizyty` (`idMiejsce`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_Klienci_Typ_wizyty1`
    FOREIGN KEY (`Typ_wizyty_idTypWizyty`)
    REFERENCES `mydb`.`Typ_wizyty` (`idTypWizyty`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_Klienci_Godzina_wizyt1`
    FOREIGN KEY (`Godzina_wizyt_idGodzina`)
    REFERENCES `mydb`.`Godzina_wizyt` (`idGodzina`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_Klienci_Fryzjerzy1`
    FOREIGN KEY (`Fryzjerzy_idFryzjerzy`)
    REFERENCES `mydb`.`Fryzjerzy` (`idFryzjerzy`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;

INSERT INTO Klienci VALUES ('1','Joanna', 'Ziemniak', 'k', '537674607', 'joanna.ziemniak@o2.pl', '25.05.2021','1','2','1','1');
INSERT INTO Klienci VALUES ('2','Karol', 'Nowak', 'm', '887653178', 'karol.nowak@o2.pl', '25.05.2021','1','1','2','2');
INSERT INTO Klienci VALUES ('3','Bartosz', 'Wójcik', 'm', '664302003', 'bartosz.wojcik@o2.pl', '26.05.2021','2','6','3','3');
INSERT INTO Klienci VALUES ('4','Zuzanna', 'Kamińska', 'k', '697135173', 'zuzanna.kaminska@o2.pl', '26.05.2021','2','5','2','4');
INSERT INTO Klienci VALUES ('5','Dagmar', 'Ważniak', 'm', '537734779', 'dagmar.wazniak@o2.pl', '27.05.2021','3','1','3','5');
INSERT INTO Klienci VALUES ('6','Patrycja', 'Dziuba', 'k', '294471093', 'patrycja.dziuba@o2.pl', '27.05.2021','3','2','1','6');
INSERT INTO Klienci VALUES ('7','Michał', 'Zych', 'm', '693293546', 'michal.zych@o2.pl', '28.05.2021','4','6','4','7');
INSERT INTO Klienci VALUES ('8','Anna', 'Półtorak', 'k', '721393277', 'anna.poltorak@o2.pl', '28.05.2021','4','3','1','8');
INSERT INTO Klienci VALUES ('9','Piotr', 'Michaluk', 'm', '534632562', 'piotr.michaluk@o2.pl', '29.05.2021','5','2','4','9');
INSERT INTO Klienci VALUES ('10','Ewa', 'Dobrogowska', 'k', '519865480', 'ewa.dobrogowska@o2.pl', '29.05.2021','5','7','1','10');
INSERT INTO Klienci VALUES ('11','Sebastian', 'Radziszewski', 'm', '511721002', 'sebastian.radziszewski@o2.pl', '30.05.2021','1','1','5','1');
INSERT INTO Klienci VALUES ('12','Urszula', 'Rutkowska', 'k', '720819928', 'urszula.rutkowska@o2.pl', '30.05.2021','1','4','9','2');
INSERT INTO Klienci VALUES ('13','Aleksander', 'Czarkowski', 'm', '788376583', 'aleksander.czarkowski@o2.pl', '31.05.2021','2','6','6','3');
INSERT INTO Klienci VALUES ('14','Zofia', 'Karpiuk', 'k', '555555555', 'zofia.karpiuk@o2.pl', '31.05.2021','2','2','7','4');
INSERT INTO Klienci VALUES ('15','Patryk', 'Kasperuk', 'm', '121212121', 'patryk.kasperuk@o2.pl', '01.06.2021','3','1','9','5');
INSERT INTO Klienci VALUES ('16','Lena', 'Kwiatkowska', 'k', '090807063', 'lena.kwiatkowska@o2.pl', '01.06.2021','3','7','7','6');
INSERT INTO Klienci VALUES ('17','Krzysztof', 'Moczulski', 'm', '908456103', 'krzysztof.moczulski@o2.pl', '02.06.2021','4','3','9','7');
INSERT INTO Klienci VALUES ('18','Weronika', 'Lubowicka', 'k', '400001023', 'weronika.lubowicka@o2.pl', '02.06.2021','4','2','7','8');
INSERT INTO Klienci VALUES ('19','Krystian', 'Bajena', 'm', '596105809', 'krystian.bajena@o2.pl', '03.06.2021','5','2','10','9');
INSERT INTO Klienci VALUES ('20','Katarzyna', 'Konstanciuk', 'k', '712374643', 'katarzyna.konstanciuk@o2.pl', '03.06.2021','5','3','6','10');

-- -----------------------------------------------------
-- Table `mydb`.`Tabelka logi`
-- -----------------------------------------------------
  create table log(
 id int auto_increment,
 czas datetime,
 akcja varchar(23),
 primary key (id) 
 );
 
-- -----------------------------------------------------
-- Table `mydb`.`Trigger logi`
-- -----------------------------------------------------

 create trigger dodawanko before delete on log  for each row 
 insert into log values (NULL,now(),"Insert do tabeli log");

SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

-- -----------------------------------------------------
-- Zapytanka
-- -----------------------------------------------------
-- 1
Select * from Cennik where Cena<200;
-- 2
Select * from Miejsce_wizyty where Miejscowość = 'Białystok';
-- 3
Select Imię, Nazwisko from Klienci where Imię like '%n%' and Płeć like 'k%' 
Order by Imię;
-- 4
Select Max(CzasWizytyWPrzybliżeniu) as Najdłuższa_wizyta from Typ_wizyty;
-- 5
Select Imię, Nazwisko, Płeć, Telefon from Fryzjerzy where idFryzjerzy between 3 and 9 
Order by Nazwisko;
-- 6
SELECT idFryzjerzy, Nazwa_zakładu
  FROM Fryzjerzy INNER JOIN Nazwa_zakładu
             ON Fryzjerzy.idFryzjerzy = Pracownicy.Nazwa_zakładu;
-- 7

 

1 odpowiedź

+1 głos
odpowiedź 5 maja 2021 przez adrian17 Ekspert (344,860 p.)
wybrane 5 maja 2021 przez Ciasteczko:)
 
Najlepsza

INNER JOIN Nazwa_zakładu

Łączy się tabele, nie kolumny. Nazwa_zakładu jest nazwą kolumny, a Pracownicy to nazwa tabeli.

komentarz 5 maja 2021 przez Ciasteczko:) Początkujący (490 p.)
Dziękuję!

Podobne pytania

0 głosów
0 odpowiedzi 247 wizyt
0 głosów
2 odpowiedzi 259 wizyt
pytanie zadane 11 kwietnia 2018 w SQL, bazy danych przez Anoonymous Obywatel (1,560 p.)
+1 głos
1 odpowiedź 109 wizyt
pytanie zadane 13 maja 2022 w SQL, bazy danych przez Blds Użytkownik (830 p.)

92,555 zapytań

141,402 odpowiedzi

319,546 komentarzy

61,939 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!

...