2

いくつかのテーブルを含むデータセットがあります。すべてのテーブルに同じディメンション (サイズ) が必要なプロセスを実行する必要があります。

2 つのシナリオでサブセットを作成する必要があります。

1-タイムスタンプ (yyyy-mm-dd hour:min:sec) に基づいてサブセットを作成します (timestamps 列のデータ型は varchar です):

1.1。特定の期間を参照するサブセットが必要です: 2004 年 8 月 12 日から 2004 年 9 月 2 日まで

1.2. 時間に基づいて前述のサブセットからサブセットを作成: 8:00:00 から 20:00:00 まで

2-レコード数に基づいてサブセットを作成する: 最初の 10000 レコードのデータを要求します。

また、Rソフトウェアを使用し、同時にRPostgreSQLパッケージを適用しています。したがって、Sql コマンドと R コマンドの両方を使用できます。

4

1 に答える 1

1

私が知る限り、あなたはかなり単純なクエリを説明しています:

SELECT  *
FROM the_table
WHERE tscolumn::timestamptz BETWEEN DATE '2004-08-12' AND DATE '2004-09-02' 
  AND extract(hour FROM tscolumn::timestamptz) BETWEEN 8 AND 20
ORDER BY tscolumn;
LIMIT 10000;

で行を適切に選択するには、LIMITが必要ですORDER BY

のマニュアルをextract参照してください。

textただし、タイムスタンプをorvarchar列に格納するのはかなり奇妙です。どうしてそうするか?

于 2012-10-16T11:52:17.860 に答える