`currency_code` varchar(3)
Лучше ID записывать и сделать тип поля INT
UPD:
--
-- Структура таблицы `country`
--
CREATE TABLE IF NOT EXISTS `country` (
`id` smallint(4) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`code` int(11) unsigned NOT NULL,
`currency_code` varchar(3) NOT NULL,
UNIQUE KEY `id` (`id`,`name`,`code`),
KEY `code` (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
-- --------------------------------------------------------
--
-- Структура таблицы `currency`
--
CREATE TABLE IF NOT EXISTS `currency` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`code` varchar(3) NOT NULL,
`name` varchar(50) NOT NULL,
`symbol` char(1) NOT NULL,
`bank_code` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`,`name`,`symbol`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Запрос
SELECT *
FROM
`currency`
INNER JOIN `country` ON (`currency`.`id` = `country`.`code`)