求大神讲解sql语句中的问题

dim rs ,mysql,userid
set rs = Server.CreateObject("ADODB.Recordset")
mysql = "select count(*) num, sum(isnull(fxl,0)) fxl, sum(advalues) adv from Linshi.dbo.temp_Report"&userid&" where subclipping = tempClippingid"
rs.open mysql,con

if not rs.EOF then
。。。。。。
end if
rs.close
set rs = nothing

以上这些固定语句是啥意思?

con.execute "update LinShi.dbo.temp_report"&userid&" set char1 = tone from (select 105 id, 'Positive' tone union select 106, 'Negative' union select 107, 'Neutral') as a where a.id = mediatypeid"

从(select 105 id, 'Positive' tone union select 106, 'Negative' union select 107, 'Neutral') as a 开始不明白了,是查询的结果可以看做表a吗?

还有上边写的是mysql ="sql语句"
下边这个是con.execute "sql语句"
这俩是一个意思吗?

上面是构造sql,用ado查询。as a是给子查询的别名,可以当作表
mysql ="sql语句"是拼接sql字符串
con.execute "sql语句"才是真正执行