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

Inner join, sql

Cloud VPS
0 głosów
299 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 Mentor (354,560 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 496 wizyt
0 głosów
2 odpowiedzi 450 wizyt
pytanie zadane 11 kwietnia 2018 w SQL, bazy danych przez Anoonymous Obywatel (1,560 p.)
+1 głos
1 odpowiedź 169 wizyt
pytanie zadane 13 maja 2022 w SQL, bazy danych przez Blds Użytkownik (830 p.)

93,482 zapytań

142,414 odpowiedzi

322,761 komentarzy

62,894 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

Kursy INF.02 i INF.03
...