Avatar billede natsortsort Nybegynder
03. august 2010 - 16:54 Der er 5 kommentarer og
1 løsning

Junction Select

Hej,
Jeg har 2 tabeller som styres vie en Junction / Relations tabel, men jeg kan simpelthen ikke gennemskue hvordan jeg laver en selection mellem 3 tabeller.

Output skal være en stor tabel med følgende felter:
'Produkter B'.navn,
'Produkter B'.Forklaring,
'Tillæg F'.navn,
'Tillæg F'.forklaring

Som skal kombineres ud fra Tabellen B_to_F.

Skal der bruges en Join i SELECT?

CREATE TABLE `Produkter B` (
  `id` int(1) NOT NULL auto_increment,
  `Navn` varchar(50) collate utf8_danish_ci NOT NULL default '0' COMMENT 'comment',
  `Forklaring` text collate utf8_danish_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci AUTO_INCREMENT=9 ;

Tabel med kategorier
CREATE TABLE `Tillæg F` (
  `id` int(1) NOT NULL auto_increment,
  `Navn` varchar(50) collate utf8_danish_ci NOT NULL default '0' COMMENT 'comment',
  `Forklaring` text collate utf8_danish_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci AUTO_INCREMENT=6 ;


CREATE TABLE `B_to_F` (
  `B` int(10) unsigned NOT NULL default '0',
  `F` int(10) unsigned NOT NULL default '0',
  PRIMARY KEY  (`B`,`F`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Data dump for tabellen `B_to_F`
--

INSERT INTO `B_to_F` VALUES (1, 1);
INSERT INTO `B_to_F` VALUES (2, 2);
INSERT INTO `B_to_F` VALUES (2, 3);
INSERT INTO `B_to_F` VALUES (2, 4);
INSERT INTO `B_to_F` VALUES (2, 5);
Avatar billede arne_v Ekspert
03. august 2010 - 17:00 #1
SELECT *
FROM B,B_TO_F,F
WHERE B.id=B_TO_F.B AND B_TO_F.F=F.id

joiner de 3 tabeller
Avatar billede natsortsort Nybegynder
03. august 2010 - 17:15 #2
Er det virkelig så simpelt :)
Lægger du et svar.
Avatar billede arne_v Ekspert
03. august 2010 - 17:23 #3
Ja.

Med nyere syntax kan det skrives som:

SELECT *
FROM (B JOIN B_TO_F ON B.id=B_TO_F.B)
      JOIN F ON B_TO_F.F=F.id
Avatar billede arne_v Ekspert
03. august 2010 - 17:24 #4
Du kan saa udvaelge raekker og kolonner fra det kombinerede output paa normnal vis.
Avatar billede arne_v Ekspert
03. august 2010 - 17:24 #5
og svar
Avatar billede arne_v Ekspert
26. september 2010 - 21:12 #6
Så mangler du bare at acceptere svaret.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester