次のデータを含む次のテーブルがあります:
id | ###文章### ###言語###||
---|---|---|
2 | 英語テキスト | ###英語###|
私が望むのは、次の形式で結果を取得することです: | リーリー | はではなく | を意味します:
は、
言語のデータである必要があります。 次のクエリを試しましたが、機能しませんでした:
リーリー(SELECT language FROM
table where id = 1)
は「ドイツ語」を返すため、クエリは次のようになります。
「ID = 1の
からドイツ語のテキストを選択してください;」しかし、これは機能しません。
これを 1 つのクエリで実行する方法はありますか?
乾杯、トーマス
P粉8059312812024-04-07 16:18:50
テーブル スキーマを少し変更する必要があります。使用する言語ごとにグループ化するための参照を追加しました
リーリー次にSQL
リーリー仮想データ
リーリーP粉5205457532024-04-07 13:43:46
使用できるオプションの 1 つは、PREPARED STATMENT
:
最初のステップは、@sql
変数に必要な列を動的に割り当てることです。以前に割り当てられた @sql
変数は、最後の SELECT
クエリの残りの部分と連結され、@sql
変数に再割り当てされます。クエリは次のようになります:
最後に、@sql
変数に割り当てられたステートメントを準備、実行し、割り当てを解除すると、期待どおりの結果が得られます。