好的,我正在使用此处states
找到的表格
...和一个表default_item
定义:
CREATE TABLE IF NOT EXISTS `default_item` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`States` varchar(200) NOT NULL DEFAULT '""'
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=637 ;
INSERT INTO `default_Item` (`id` `States`) VALUES
(636, '''AR'',''CA''');
我在包含州缩写列表的表中有一个字段,该字段是“州”,所以如果我选择其中一个字段作为示例:
SELECT `States`
FROM `default_item`
WHERE `id`=636
这通过 PHPMyAdmin 返回:
'AR','CA'
我希望能够用上面引用的表“状态”中的州名称替换州缩写。如果我使用:
SELECT group_concat( `state` )
FROM `state`
WHERE `state_abbr`
IN (
'AR', 'CA'
)
有用!我得到:
Arkansas,California
但是如果我使用子查询...
SELECT group_concat( `state` )
FROM `state`
WHERE `state_abbr`
IN (
SELECT `States`
FROM `default_item`
WHERE `id`=636
)
...这将返回 NULL。
一直在寻找一些关于我做错了什么的提示,但似乎找不到诀窍。有人有解决方案吗?