use std::collections::HashMap;
extern crate datafusion;
use datafusion::rel::*;
use datafusion::exec::*;
use datafusion::dataframe::*;
extern crate serde_json;
fn main() {
let schema = TupleType::new(vec![
ColumnMeta::new("id", DataType::UnsignedLong, false),
ColumnMeta::new("name", DataType::String, false)
]);
let mut schemas : HashMap<String, TupleType> = HashMap::new();
schemas.insert("people".to_string(), schema.clone());
let ctx = ExecutionContext::new(schemas.clone());
let df = ctx.load("test/people.csv", &schema).unwrap();
let id = df.col("id").unwrap();
let id_value = Rex::Literal(Value::UnsignedLong(4));
let df2 = df.filter(id.eq(&id_value)).unwrap();
df2.write("person4.csv");
}