別のシートからデータを取得するためにクエリを使用するシートがあります。このデータはちょっとこのように見えます。Googleスプレッドシート - 日付を比較し、最新の行を条件付きで返す
DATE STOREID OTHERDATA
02/11/2017 Store 1 Other data 1
01/11/2017 Store 1 Other data 2
09/10/2017 Store 2 Other data 3
05/10/2017 Store 2 Other data 4
下記のように、店舗ごとに最新の日付行のみを返す方法を探しています。
DATE STOREID OTHERDATA
02/11/2017 Store 1 Other data 1
09/10/2017 Store 2 Other data 3
私は現在ルックスを使用していたクエリこのような何か:
=query(DATASHEET!A2:CF11, "select C, CC, L,CD, E, BZ, CA, CB where (BF='CUSTOMERNAME1') order by C desc, CC, L, BZ desc",0)
が、これはすべての日付とstoreIDsでクエリを見て作るだけstoreIDあたり最高の日付を返すことは可能ですか?ループ/ forを使用して別の言語でこれを行うことは想像できますが、Googleの検索結果ではクエリでは不可能と言われています。
データシートでこれを行うことをお勧めします。そのため、各行にLATEST/NOT LATESTのいずれかの列を指定し、WHERE文でクエリを使用できますか?
ここに私が何をしようとしているのかを説明するのに役立つようにセットアップを試みた例があります。 https://docs.google.com/spreadsheets/removed
私は一日中それを理解しようとしましたが、どんな助けもありがたいです。不明な点があれば教えてください。
ありがとうございます!
ありがとう、それは素晴らしい作品です!とても有難い。 他の要件と列の追加についてはどうすればよいですか? 私の元のクエリ:CのDESC、CC、LによってC、CC、L、CD、E、BZ、CA、CB(BF = 'CUSTOMERNAME1')の順序を選択し、BZのDESC が、私は別の列を追加しようとしたが、得ました集計エラー何かアドバイス? –
クエリに列を追加するには、すべての範囲を展開するだけです。 '{ROW(A2:A)、SORT(A2:** **)} 'を実行し、新しい列をVLOOKUPリターンに追加します。 '{2,3,4、** **}'。数式の_Query_チャンクは、日付の最大行のみを抽出します。 Vlookupはクエリ結果に基づいて残りのセルを照合します。そのデータセットからさらに多くのデータを取得したい場合は、そのデータを1つのシートに保存し、別のシートから再度クエリすることをお勧めします。 –
warbirdn
説明のためにありがとう、私は問題なしでそこに欲しかった余分な列を得た.. 最後の質問、私は2つの列で注文を使用したい、しかし、どこに私はクエリで注文を追加する壊せ。それを注文することは可能ですか? (例:ORDER BY Col3、Col 5) 現在、次のようになります。= ARRAYFORMULA(VLOOKUP(QUERY({ROW(DATA!C2:C)、SORT(DATA!C2:CF)}}、「SELECT MAX )Col3 LABEL MAX(Col1) '' '、0)、{ROW(DATA!A2:C)、SORT(DATA!C2:CF)}のように、Col3がNULLでなく、(Col57 =' CUST 1 ' {2,80,11,81,4,77,78,79}、0)) –