Currently I want to get data from another table with my foreign key.
I have already setup my foreign key.
I have tables setup like this:
CREATE TABLE IF NOT EXISTS `album` (
`album_ID` int(11) NOT NULL AUTO_INCREMENT,
`album_navn` varchar(150) NOT NULL,
PRIMARY KEY (`album_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
--
--
INSERT INTO `album` (`album_ID`, `album_navn`) VALUES
(1, 'Nytår'),
(2, 'Berlin'),
(3, 'Færøerne'),
(5, 'TEST');
CREATE TABLE IF NOT EXISTS `billeder` (
`billeder_ID` int(11) NOT NULL AUTO_INCREMENT,
`billeder_navn` varchar(150) NOT NULL,
`billeder_fotograf` varchar(150) NOT NULL,
`billeder_sti` varchar(150) NOT NULL,
`fk_album_ID` int(11) NOT NULL,
PRIMARY KEY (`billeder_ID`),
KEY `fk_album_ID` (`fk_album_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=54 ;
--
--
INSERT INTO `billeder` (`billeder_ID`, `billeder_navn`, `billeder_fotograf`, `billeder_sti`, `fk_album_ID`) VALUES
(24, 'Vi tester4', 'Nytår', 'full_nytaar.jpg', 1),
(25, '', 'Nytår', 'full_nytaar2.jpg', 1),
(26, '', 'Nytår', 'full_nytaar4.jpg', 1),
Where I want to get ALBUM_NAVN via my fk_album_ID
so it will be possible to get it like this:
$row[album_navn]
I have tried to do it, but im lost.
Thanks in advance.
Regards, Kristian
尝试:
select * from billeder left join album where billeder.fk_album_ID=album.album_ID
This query will bring the desired result.
SELECT b . * , a.album_navn FROM `billeder` b, album a WHERE b.fk_album_ID = a.album_ID
Please try this php code as well. This is working and tested. You need to use join in query.
// CONNECT TO THE DATABASE
$DB_NAME = 'test';
$DB_HOST = 'localhost';
$DB_USER = 'root';
$DB_PASS = '';
$mysqli = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
//query
$query = " SELECT b . * , a.album_navn FROM `billeder` b, album a
WHERE b.fk_album_ID = a.album_ID";
$result = $mysqli->query($query) or die($mysqli->error.__LINE__);
// show data
if($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo ($row['album_navn']);
}
}
else {
echo 'No record found';
}
//close conn
mysqli_close($mysqli);
请尝试这个查询
SELECT * FROM billeder LEFT JOIN album ON billeder.fk_album_ID = album.album_ID
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.