sql server - Python: Use JSON list as parameters in SQL -


res_vod = db.execute("""  select cast ((sum(r.salesvolume)/1000.0) decimal(6,1)) rawdata r inner join product p  on r.productid = p.productid  inner join calendar c  on r.dayid = c.dayid c.weekcodeinyear between 30 , 50 , p.vodest in ('vod') , p.distributor in ({}) group c.weekcodeinyear  order c.weekcodeinyear""".format(', '.join(["'" + studio + "'" studio in _studios]))  ) 

the above code allows me add list parameter query. requirement add multiple parameters. in above code _studios list contains parameters.

_studios = ["warner","tf1","gaumont","pathe","studiocanal","francetv","m6snd"]

i have list like: _vodest = ["vod","est"] want add parameter p.vodest in query.

i have done using % has noted list contains double quotes("warner") sql query requires single quote('warner')

always use parametrized sql when possible:

def placemarks(n):     return ','.join(['%s']*n)  sql = """select cast ((sum(r.salesvolume)/1000.0) decimal(6,1))          rawdata r          inner join product p           on r.productid = p.productid           inner join calendar c           on r.dayid = c.dayid          c.weekcodeinyear between 30 , 50          , p.vodest in ({})          , p.distributor in ({})          group c.weekcodeinyear           order c.weekcodeinyear""".format(              placemarks(len(_vodest)),               placemarks(len(_studios))) args = [_vodest + _studios] res_vod = db.execute(sql, args) 

Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -

How to provide Authorization & Authentication using Asp.net, C#? -