私のデータベースでは、 "type"というフィールドをtinyIntという名前で保存しています。多くの型がないので、これらの型すべての対応する名前を格納するテーブルを作成しないと決めました。整数(id)をテキスト文字列にマップしますか?
テーブルを照会するときに、型をPHP配列に格納されている対応する名前に置き換えます。私は結果をループして返される結果行を置換するのではなく、SQL文の内部でこの置換を行う方法があるのだろうかと思います。
SELECT *, CASE type WHEN 1 THEN 'abc' WHEN 2 THEN 'xyz' END as stringType
FROM orders
あなたはまた、ELSE
を使用することができます。これを行うには
select *, map(type, {1=>'abc', 2 => 'xyz'}) from orders