diff options
author | vidmantas zemleris <vidmantas@vinted.com> | 2015-05-11 22:29:24 -0700 |
---|---|---|
committer | Reynold Xin <rxin@databricks.com> | 2015-05-11 22:29:24 -0700 |
commit | 640f63b959f936ac142ce429262ffc3db4536619 (patch) | |
tree | 9ddbc80a818b0cc285266a67a8c5a3a0144fb318 /docs/sql-programming-guide.md | |
parent | 16696759e9a292378cbfdf695a63d6d0cff0d79a (diff) | |
download | spark-640f63b959f936ac142ce429262ffc3db4536619.tar.gz spark-640f63b959f936ac142ce429262ffc3db4536619.tar.bz2 spark-640f63b959f936ac142ce429262ffc3db4536619.zip |
[SPARK-6994][SQL] Update docs for fetching Row fields by name
add docs for https://issues.apache.org/jira/browse/SPARK-6994
Author: vidmantas zemleris <vidmantas@vinted.com>
Closes #6030 from vidma/docs/row-with-named-fields and squashes the following commits:
241b401 [vidmantas zemleris] [SPARK-6994][SQL] Update docs for fetching Row fields by name
Diffstat (limited to 'docs/sql-programming-guide.md')
-rw-r--r-- | docs/sql-programming-guide.md | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/docs/sql-programming-guide.md b/docs/sql-programming-guide.md index 6b7b867ea6..78b8e8ad51 100644 --- a/docs/sql-programming-guide.md +++ b/docs/sql-programming-guide.md @@ -367,11 +367,18 @@ val people = sc.textFile("examples/src/main/resources/people.txt").map(_.split(" people.registerTempTable("people") // SQL statements can be run by using the sql methods provided by sqlContext. -val teenagers = sqlContext.sql("SELECT name FROM people WHERE age >= 13 AND age <= 19") +val teenagers = sqlContext.sql("SELECT name, age FROM people WHERE age >= 13 AND age <= 19") // The results of SQL queries are DataFrames and support all the normal RDD operations. -// The columns of a row in the result can be accessed by ordinal. +// The columns of a row in the result can be accessed by field index: teenagers.map(t => "Name: " + t(0)).collect().foreach(println) + +// or by field name: +teenagers.map(t => "Name: " + t.getAs[String]("name")).collect().foreach(println) + +// row.getValuesMap[T] retrieves multiple columns at once into a Map[String, T] +teenagers.map(_.getValuesMap[Any](List("name", "age"))).collect().foreach(println) +// Map("name" -> "Justin", "age" -> 19) {% endhighlight %} </div> @@ -538,7 +545,7 @@ peopleDataFrame.registerTempTable("people") val results = sqlContext.sql("SELECT name FROM people") // The results of SQL queries are DataFrames and support all the normal RDD operations. -// The columns of a row in the result can be accessed by ordinal. +// The columns of a row in the result can be accessed by field index or by field name. results.map(t => "Name: " + t(0)).collect().foreach(println) {% endhighlight %} |