Files
Python-for-Geeks/Chapter8/sql/sql1.py
T
2021-05-31 18:04:55 +04:00

34 lines
1.0 KiB
Python

#dfcreate1.py: create a df from a collection
#please ignore next 2 statements if running directly in PySpark shell
import time
from pyspark.sql import SparkSession
from pyspark.sql.functions import regexp_replace, lit, when
spark = SparkSession.builder.master("local[*]")\
.appName("DataFrame Test app")\
.getOrCreate()
data = [('James','','Bylsma','HR','M',40000),
('Kamal','Rahim','','HR','M',41000),
('Robert','','Zaine','Finance','M',35000),
('Sophia','Anne','Richer','Finance','F',47000),
('John','Will','Brown','Engineering','F',65000)
]
columns = ["firstname","middlename","lastname",
"department","gender","salary"]
df = spark.createDataFrame(data=data, schema = columns)
df.createOrReplaceTempView("EMP_DATA")
df2 = spark.sql("SELECT * FROM EMP_DATA")
print(df2.show())
df3 = spark.sql("SELECT firstname, middlename, lastname, "
"salary FROM EMP_DATA WHERE SALARY > 45000")
print(df3.show())
df4 = spark.sql(("SELECT gender, count(*) from EMP_DATA group by gender"))
print(df4.show())