diff options
author | Takuya UESHIN <ueshin@happy-camper.st> | 2014-05-10 12:03:27 -0700 |
---|---|---|
committer | Patrick Wendell <pwendell@gmail.com> | 2014-05-10 12:03:27 -0700 |
commit | 8e94d2721a9d3d36697e13f8cc6567ae8aeee78b (patch) | |
tree | 8db65f4f2ec6e64d317cb719d4588ff442c619e8 /sql | |
parent | 4d6055329846f5e09472e5f844127a5ab5880e15 (diff) | |
download | spark-8e94d2721a9d3d36697e13f8cc6567ae8aeee78b.tar.gz spark-8e94d2721a9d3d36697e13f8cc6567ae8aeee78b.tar.bz2 spark-8e94d2721a9d3d36697e13f8cc6567ae8aeee78b.zip |
[SPARK-1778] [SQL] Add 'limit' transformation to SchemaRDD.
Add `limit` transformation to `SchemaRDD`.
Author: Takuya UESHIN <ueshin@happy-camper.st>
Closes #711 from ueshin/issues/SPARK-1778 and squashes the following commits:
33169df [Takuya UESHIN] Add 'limit' transformation to SchemaRDD.
Diffstat (limited to 'sql')
-rw-r--r-- | sql/core/src/main/scala/org/apache/spark/sql/SchemaRDD.scala | 9 | ||||
-rw-r--r-- | sql/core/src/test/scala/org/apache/spark/sql/DslQuerySuite.scala | 6 |
2 files changed, 15 insertions, 0 deletions
diff --git a/sql/core/src/main/scala/org/apache/spark/sql/SchemaRDD.scala b/sql/core/src/main/scala/org/apache/spark/sql/SchemaRDD.scala index 34200be3ac..2569815ebb 100644 --- a/sql/core/src/main/scala/org/apache/spark/sql/SchemaRDD.scala +++ b/sql/core/src/main/scala/org/apache/spark/sql/SchemaRDD.scala @@ -179,6 +179,15 @@ class SchemaRDD( new SchemaRDD(sqlContext, Sort(sortExprs, logicalPlan)) /** + * Limits the results by the given expressions. + * {{{ + * schemaRDD.limit(10) + * }}} + */ + def limit(limitExpr: Expression): SchemaRDD = + new SchemaRDD(sqlContext, Limit(limitExpr, logicalPlan)) + + /** * Performs a grouping followed by an aggregation. * * {{{ diff --git a/sql/core/src/test/scala/org/apache/spark/sql/DslQuerySuite.scala b/sql/core/src/test/scala/org/apache/spark/sql/DslQuerySuite.scala index be0f4a4c73..92a707ea57 100644 --- a/sql/core/src/test/scala/org/apache/spark/sql/DslQuerySuite.scala +++ b/sql/core/src/test/scala/org/apache/spark/sql/DslQuerySuite.scala @@ -71,6 +71,12 @@ class DslQuerySuite extends QueryTest { Seq((3,1), (3,2), (2,1), (2,2), (1,1), (1,2))) } + test("limit") { + checkAnswer( + testData.limit(10), + testData.take(10).toSeq) + } + test("average") { checkAnswer( testData2.groupBy()(Average('a)), |