2011-07-27 11 views
0

私は、mysql言語で十分な経験がありません。 私は、現在のテーブルのカラム値からの値のようなテーブル名を持つ別のテーブルから何かを選択するサブクエリを含むクエリが必要です。 クエリは、このようなものです:この例のアクション_ {$ ID} .father_id(またはaction.father_id)でテーブル名としてのカラムの値

SELECT * FROM `action_{$id}` as `action` INNER JOIN `{$id}` as `table` ON 
    (
     (
     action.father_id='0' AND //some condition 
     ) 
     OR 
     (
      action.father_id<>'0' AND 
     table.type_id IN 
     (
      SELECT type FROM **action_{$id}.father_id** WHERE type_id='{$id}' 
      ) 
     ) 
    ) 

は私のデータベースから別のテーブルの名前が含まれています。

英語を間違えてください。 ありがとうございました!

答えて

1

いいえ、これは不可能であり、テーブルデザインに構造的な誤りがあることを示しています。

action_{$id}.father_id** WHERE type_id='{$id}'
多分それは私ですが、それほど冗長ではありませんか?

+0

可能です。しかし、あなたの答えは正しいです。男が脚を自分で撃つように教えることは間違っています。 –

+0

私は間違いがあることを知っていますが、私はそれが似ている、別の構文だと思っていた... とにかく私のクエリは非常に遅くする必要があります。この回答をありがとう(これは素晴らしいコミュニティです)! –

関連する問題