Задать вопрос
Ответы пользователя по тегу SQL
  • INNER JOIN связка двух таблиц или нужен пинок нужную сторону

    `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`)
    Ответ написан
    Комментировать