2

データベースのクエリに php と Mysql を使用しています。私がやろうとしているのは、次のものを作成することです:

Project Name 1
List todo
List todo
List todo 

Project Name 2
List todo
List todo
List todo 

次のmysqlテーブルがあります。

Project
project.projectId
project.projectName

Todo
todo.todoId
todo.todoEntry
todo.todoProjectid

テーブルをクエリして、プロジェクトのリスト全体を取得し、todo に参加することができます。しかし、ヘッダー (プロジェクト名) を作成してから、その下でループを実行したいと考えています。

親に基づいて todo ごとにネストされた sql クエリを実行できますが、それは十分に効率的ではないように思えます。誰でも改善を提案しますか?

4

2 に答える 2

0

この場合、同じ列がクエリから出力されます。からのものもあれば、からのものProjectもありTodoます。課題は、それらを正しい方法で並べることです。

select which, name
from ((select 'Project' as which, name, 1 as ordering, projectid, NULL as id
       from  Project p
      ) union all
      (select 'List' as which, entry, 2 as ordering, projectid, id
       from Todo t
      )
     ) t
order by projectid,
         ordering,
         id;
于 2013-07-30T12:37:18.937 に答える