ホームページ  >  に質問  >  本文

MySQL: 「<ここの変数またはサブクエリ> として...からテキストを選択します」

次のデータを含む次のテーブルがあります:

###文章### ###言語### 1ドイツ語テキスト ###ドイツ人### ###英語### 私が望むのは、次の形式で結果を取得することです: は を意味します: リーリー キー/列名
id
2 英語テキスト
リーリー ではなく
text

は、

言語

のデータである必要があります。 次のクエリを試しましたが、機能しませんでした:

リーリー

(SELECT language FROM table where id = 1) は「ドイツ語」を返すため、クエリは次のようになります。 「ID = 1の

table

からドイツ語のテキストを選択してください;」しかし、これは機能しません。

これを 1 つのクエリで実行する方法はありますか? 乾杯、トーマス

P粉012875927P粉012875927211日前714

全員に返信(2)返信します

  • P粉805931281

    P粉8059312812024-04-07 16:18:50

    テーブル スキーマを少し変更する必要があります。使用する言語ごとにグループ化するための参照を追加しました

    リーリー

    次にSQL

    リーリー

    仮想データ

    リーリー

    返事
    0
  • P粉520545753

    P粉5205457532024-04-07 13:43:46

    使用できるオプションの 1 つは、PREPARED STATMENT:

    です。 リーリー

    最初のステップは、@sql 変数に必要な列を動的に割り当てることです。以前に割り当てられた @sql 変数は、最後の SELECT クエリの残りの部分と連結され、@sql 変数に再割り当てされます。クエリは次のようになります:

    リーリー

    最後に、@sql 変数に割り当てられたステートメントを準備、実行し、割り当てを解除すると、期待どおりの結果が得られます。

    デモヴァイオリン

    返事
    0
  • キャンセル返事