Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
scalikejdbc-bigquery
scalikejdbc-bigquery
↑↑We’re Hiring!
scalikejdbc-bigquery
scalikejdbc-bigquery
scalikejdbc-bigquery
scalikejdbc-bigquery
bq {
select(p.result.*, t.result.*).from(
(Post in dataset) as p
).leftJoin(
(Tag in dataset) as t
).on(p.id, t.postId)
}
.one(Post(_))
.toMany(Tag.opt)
.map(PostWithTags)
.list
.run(executor)
bq {
select(p.result.*, t.result.*).from(
(Post in dataset) as p
).leftJoin(
(Tag in dataset) as t
).on(p.id, t.posssssstId) // wrong column name
}
bq {
select(p.result.*, t.result.*).from(
(Post in dataset) as p
).leftJoin(
(Tag in dataset) as t
).on(p.id, t.postId)
.where
// Don't know how to bind MyDataType as parameter
.eq(t.name, MyDataType("some tag_name"))
}
bq {
select(
// window function
p.result.*, rank.over(orderBy(p.postedAt.desc)).as(sqls"rnk")
).from(
(Post in dataset) as p
)
}
.map { resultSet =>
PostWithRank(Post(resultSet), resultSet.int(sqls"rnk"))
}
.list
.run(executor)
scalikejdbc-bigquery


Query Building

(ScalikeJDBC)
Execute

using BigQuery Java
Client Library

(scalikejdbc-bigquery)
Extract Result

(scalikejdbc-bigquery)


scalikejdbc-bigquery




scalikejdbc-bigquery
scalikejdbc-bigquery






scalikejdbc-bigquery




// JDBC
val statement = conn.prepareStatement(
"select * from user where id = ? and name = ?"
)
// bind parameters
statement.setInt(1, 42)
statement.setString(2, "John")
// BigQuery Java Client Library
val request = QueryRequest.newBuilder(
"select * from user where id = ? and name = ?")
.setPositionalParameters(
Seq(
QueryParameterValue.int64(42),
QueryParameterValue.string("John")
).asJava
)
.build()
scalikejdbc-bigquery






scalikejdbc-bigquery
scalikejdbc-bigquery
scalikejdbc-bigquery

More Related Content

scalikejdbc-bigquery