2016-04-17 1 views
-4

はそれが可能このようなものを持っていることです。 id。それ以外の方法はありません。 ヒントはありますか?LEFT JOIN CONCAT( 'hello _'、c.id)は可能ですか?私はCと、この連結を必要があります( 'ハロー_'、c.id)</p> <p>CONCATを登録しよチャネルC 左からID として</p> <p>SELECT c.id:

+0

正確に達成しようとしているのは何ですか?あなたはあなたのテーブル構造、いくつかのサンプルデータ、そしてあなたが達成しようとしている結果を共有できますか? – Mureinik

+0

テーブル名が必要ですhello_c.id チャネルのすべての行に、hello_ <チャネルのID>というテーブルがあります。... hello_c.idと同じです。 –

+2

私が理解しているところでは、あなたのデータベースモデルを見直して考え直してください。 –

答えて

0

SQLレベルで実行する予定のある場合は不可能です。表名トークンは式から計算されません。

しかし、phpを使用して動的にクエリを作成すると、必要に応じて「変更された」テーブル名を使用するにはかなりの時間がかかるはずです。 したがって、concat()は、クエリを作成するときにPHP式にする必要があります。

基本テーブルの列の値に基づいて(別の)テーブルを結合しようとしている場合は、SQLセマンティクスから離れています。あなたの連結は、現在の情報に単一のテーブルを計算し、それが属する論理テーブルで、各行にラベルを付けしようとしているものによって識別されたすべてのテーブルのインスタンスをマージするスキーマを再配置したい場合がありますその場合は

+0

はい私は既にPHPで別々のクエリでそれを持っています。しかし、私は単一のクエリ内でそれを達成したかったのです。 しかし、少なくとも、無意味な回答でポイントを取得するには、実際に質問をスパムする人の代わりに本当の答えを出しました。いいえ。実際にはまったく答えがありません。 Thx –

2

カラム値とCONCATのような関数を使用して、MySQLのクエリでテーブル名を生成できるかどうかを質問しました。

短い答えはです。

MySQLの準備済みの文が含まれています。これは、基本的にMySQLストアドプロシージャで文字列処理を使用して、実行するクエリのテキストを生成する方法です。

関連する問題