Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'mysql2'
- require 'dotenv'
- Dotenv.load
- client = Mysql2::Client.new(:host => ENV["DB_HOST"], :username => ENV["DB_USER"], :password => ENV["DB_PASSWORD"])
- query1 = <<-SQL
- SELECT DISTINCT(p.tms_id)
- FROM on_prod.episodes p
- INNER JOIN onto_prod.matches m on p.tms_id = m.target_id
- INNER JOIN casttv_prod.videos v on m.driver_id = v.id
- INNER JOIN casttv_prod.video_hosts vh on v.host_name = vh.name
- WHERE p.deleted IS NULL
- AND m.type IN ('OnlineTvMatch', 'OnlineShortEpisodeMatch')
- AND (m.state IN ('matched', 'verified', 'approved', 'crafted', 'import_crafted') OR (m.state = 'dubious' and m.type = 'OnlineShortEpisodeMatch'))
- AND v.ugc IS NULL
- AND vh.ovc_provider = 1
- AND m.updated_at > '2017-04-24'
- AND m.updated_at < '2017-04-25T17:11:10'
- ORDER BY p.tms_id
- LIMIT 10000;
- SQL
- results1 = client.query(query1)
- puts results1.first.inspect
- query2 = <<-SQL
- SELECT DISTINCT(e.tms_id), MIN(m.updated_at) as oldest_update, MAX(m.updated_at) as newest_update
- FROM on_prod.episodes e
- INNER JOIN onto_prod.matches m on e.tms_id = m.target_id
- WHERE e.tms_id IN ('#{results1.map{|r| r["tms_id"]}.join("','")}')
- HAVING oldest_update > '2017-04-24' AND newest_update < '2017-04-25T17:11:10'
- SQL
- results2 = client.query(query2)
- puts results2.size
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement