在脉脉上看到一片在程序中对字符串拼接的实现,不用+号如何完成字符串拼接,大概看了下评论,大部分都是说在java中实现不使用+号,完成字符串的拼接操作,在此之前我也是安装以往经验for循环遍历列表使用+号完成字符串拼接操作,今天尝试使用非+号完成字符串的拼接操作,一下拼接一个条件sql的拼接实现
例句sql是链接到hive库进行的查询操作
代码如下
imsis = ('460020291****15', '46002029****6391')
# 构造新数列
# i = "("
# for s in imsis:
# i = i + s + ","
# i = i.strip(',') + ")"
items = ('460020291****15', '46002029****6391')
items_tmp = ",".join(items)
items_str = "%s%s%s" %("(", items_tmp, ")")
if imsis:
sql = "select bill_id, imsi as IMSI from data_tmp.bill_imsi where imsi in %s limit 10" %items_str
else:
sql = "select bill_id, imsi as IMSI from data_tmp.bill_imsi limit 10"
print(sql)
con2hive(sql=sql)
注释:
items_tmp = ",".join(items) 实现对元组items根据,以逗号“,”进行分割组成新字符con2hive(sql=sql) 调用链接hive数据仓库的执行函数
输入内容如下
注:列表或元组中必须为字符串才能使用join进行拼接
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。