以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于字符串内重复字段问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=146982) |
-- 作者:aidimeng -- 发布时间:2020/3/7 9:28:00 -- 关于字符串内重复字段问题 通过递归函数合成一段字符 如下 \'B5#20190628\',\'B5#20190628\',\'B5#20190628\',\'B5#20190628\',\'B5#20190628\',\'HB5#20190628\',\'B5#20190702\', \'HB5#20190628\',\'B5#20190702\',\'HB5#20190701\',\'B5#20190704\',\'HB5#20190701\',\'B5#20190704\',\'B5#20190705\',\' B5#20190706\',\'B5#20190705\',\'B5#20190706\',\'B5#20190708\',\'B5#20190721\',\'B5#20190708\',\'B5#20190721\',\'B5#20190722\',\'B5#20190726\',\' B5#20190722\',\'B5#20190726\',\'B5#20190730\',\'B5#20190821\',\'B5#20190730\',\'B5#20190821\',\'B5#20190822\',\'B5#20190823\',\'B5#20190822\',\' B5#20190823\',\'B5#20190825\',\'B5#20190830\',\'B5#20190825\',\'B5#20190830\',\'HB5#20190830\',\'B5#20190901\',\'HB5#20190830\',\'B5#20190901\',\' B5#20190903\',\'B5#20191010\',\'B5#20190903\',\'B5#20191010\',\'HB5#20191010\',\'B5#20191012\',\'HB5#20191010\',\'B5#20191012\',\'B5#20191013\',\' B5#20191017\',\'B5#20191013\',\'B5#20191017\',\'B5#20191018\',\'B5#20191022\',\'B5#20191018\',\'B5#20191022\',\'B5#20191024\',\'B5#20191027\',\' B5#20191024\',\'B5#20191027\',\'B5#20191030\',\'B5#20191112\',\'B5#20191030\',\'B5#20191112\',\'HB5#20191112\',\'B5#20191113\',\'HB5#20191112\',\' B5#20191113\',\'B5#20191114\',\'B5#20191117\',\'B5#20191114\',\'B5#20191117\',
发现有很多是重复的,在后面的程序中会用 sql 语句 where 字段 in () 上面的字符串。导致运行速度很慢,
这里我能怎么优化后 在执行 sql 比较好呢 |
-- 作者:有点蓝 -- 发布时间:2020/3/7 9:58:00 -- in本身就慢,属于全表扫描,基本用不上索引,和重复没有多大关系。看能不能改为inner join之类的关联查询 |
-- 作者:有点蓝 -- 发布时间:2020/3/7 10:00:00 -- 如果要去重,递归的时候先添加到集合里,使用集合判断去重,最后再合并字符。 |
-- 作者:aidimeng -- 发布时间:2020/3/7 10:31:00 -- 谢谢 我试试 |