mysqlで目的の列名でsql結果のインデックス値を設定するにはどうすればよいですか? 例えば
テーブル名: 国
+-----------+----------------+--------------------+
| id | code | name |
+-----------+----------------+--------------------+
| 1 | 88 | Bangladesh |
+-----------+----------------+--------------------+
| 2 | 966 | Saudi Arabia |
+-----------+----------------+--------------------+
| 3 | 967 | Yemen |
+-----------+----------------+--------------------+
| 4 | 963 | Syria |
+-----------+----------------+--------------------+
| 5 | 249 | Sudan |
+-----------+----------------+--------------------+
create table クエリは次のとおりです。
CREATE TABLE `country` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` int(20) NOT NULL,
`name` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;
テーブルへのデータの挿入は次のとおりです。
insert into `country`(`id`,`code`,`name`) values (1,88,'Bangladesh'),
(2,966,'Saudi Arabia'),(3,967,'Yemen'),(4,963,'Syria'),(5,249,'Sudan');
結果は次のように表示されます。
次のクエリを実行すると、目的の結果が次のようになります。
select code, name from country order by code ;
望ましい結果:
[88] => Array
(
[code] => 88,
[name] => Bangladesh
)
[249] => Array
(
[code] => 249,
[name] => Sudan
)
[963] => Array
(
[code] => 963,
[name] => Syria
)
[966] => Array
(
[code] => 966,
[name] => Saudi Arabia
)
[967] => Array
(
[code] => 967,
[name] => Yemen
)
直接 SQL クエリによるコードになる配列キーが必要です。出来ますか?