「順番を1、2、3ではなくて、2,3,1にしてほしい」
順番がゲシュタルト崩壊(?)
データベース設計時、ここは順番が変わるかもしれない。ってどうやって予想すればいいかな。確かに順番が必要、って最初からわかっていたら、ソートキーのカラムを作れば回避できると思うけど。
さてさて、その順番を任意の順番に変更したい場合、どうすればいいんやと思ったけど、探したらあった。
http://snowland.net/nucleus/item/2984
ありがとうございますm(_ _ )m
mysql> select table1.type from table1 order by field(type,2,5,3);
+------+ | type | +------+ | 2 | | 2 | | 2 | | 2 | | 2 | | 5 | | 3 | | 3 | | 3 | | 3 | | 3 | | 3 | | 3 | | 3 | | 3 | | 3 | +------+
しゅごい。。。
これをCakePHP2.x側でどうやって実装するのか。
まぁ普通に考えつくのがこれだよね。
<?php // ... 省略 $queryParameter = array( 'order' => array( 'field(type,2,5,3)' ) ); $data = $this->Table1->find('all', $queryParameter);
これでおkです。うまくいきました。