私が持っている質問は、これと似たようなものです-MySQLは内部結合から1行を選択します
しかし、私が必要とする方法で実際に答えられることはありませんでした。それで聞いてみようと思いました。
テーブル A (テーブル A) があり、このテーブルにはテーブル B に多数の状態があります。新しい州は常に追加され続けています。
TableB には、TableA.Id への外部キーを持つ列「State」があります。このテーブル B には値とタイムスタンプがあります
テーブルAのすべての値を返す1つのクエリを取得しようとしています。内部結合を使用して、テーブルBからそれらの行の最新の「値」を取得します。最新とは、時刻が最新のものです。
必要な場所で内部結合を行う方法と、テーブルを注文して最新の「時間」行を戻す方法は知っていますが、これら 2 つを組み合わせて単一のクエリを作成する方法はわかりません。
選択内に選択が必要になると確信していますが、これで問題ありません。ただし、回避しようとしているのは、TableA からのすべての結果を DataTable に戻し、tableB のそれぞれに対して個別にクエリを実行することです。
何か案は?
編集-質問を間違えました。回答の1つを実装しようとしたときにだけ気づきました。
TableA.id と TableB.proId の間に外部キーがあります
TableA - 'Id'、'Name' TableB - 'Id'、'proId'、'State'、'time'
B に結合して TableA のすべての値を戻し、最大時間の「状態」を戻したい