質問: mysqlから取り出したものを3つに分ける mysqlに以下のようなsqlを打ちました。 create table table_list( id int, task varchar(255) ); insert into table_list values(1,'ほげほげ1-1'); insert into table_list values(1,'ほげほげ1-2'); insert into table_list values(2,'ほげほげ2-1); insert into table_list values(2,'ほげほげ2-2'); insert into table_list values(3,'ほげほげ3-1'); そして、空のdiv要素が3つあります。 このデータベースからidの数値別に、div要素へtaskの文字列を入れたいのですが、どうすればいいのでしょうか? sqlで「select * from table_list」をやってからtaskを取り出すのか、3回sqlで「select task from table_list where id=1」のようにするのがよろしいんでしょうか?
回答: まず・・・ フィールド名がidというからには排他的であるのが普通ですね。 sql的にはuniqueもしくはprimaryで管理すべきところです。 とりあえず同じidが複数あるという場合は select * from table_list して、whileで回して、値を得るのが常套でしょう。 通常はsqlを発行する時点でidが1,2,3であることをわかっている わけではないので後者はつかわないと思います。 またidがかぶっているのでdivに渡す値は複数値になるので、 どうやって表現するか仕様をあらかじめ検討しておいた方がよいですね