请帮忙看看这句sql语句

Atest001 2011-03-10 09:41:53

StringBuffer sql = new StringBuffer("select dt.billno,sr.USALBILLNO from ");
sql.append(" scm_ownerchg_idtoid@db_cmsgz sr left join scm_salbill_hdr@db_cmsgz dt on sr.LSALBILLID=dt.id "); sql.append(" where sr.usalbillno in ");
sql.append(" (select billno from INPUT_CARTON_DTL_SZ where QinghuoFlag='Y' and is_insert is null) ");

我只知道billno 和 USALBILLNO是表中字段,scm_ownerchg_idtoid和scm_salbill_hdr是数据表,问题是scm_ownerchg_idtoid@db_cmsgz sr 还有on sr.LSALBILLID=dt.id这话看不懂(主要问题是@这个符号)。
谁知道下 多谢。
...全文
145 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Atest001 2011-03-10
  • 打赏
  • 举报
回复
部分代码

System.out.println(this.cb.getContrlID()+"开始清洗数据....");

StringBuffer sql = new StringBuffer("select dt.billno,sr.USALBILLNO from ");
sql.append(" scm_ownerchg_idtoid@db_cmsgz sr left join scm_salbill_hdr@db_cmsgz dt on sr.LSALBILLID=dt.id ");
// sql.append(" scm_ownerchg_idtoid sr left join scm_salbill_hdr dt on sr.LSALBILLID=dt.id ");
sql.append(" where sr.usalbillno in ");
sql.append(" (select billno from INPUT_CARTON_DTL_SZ where QinghuoFlag='Y' and is_insert is null) ");

//查询出新旧单号
pst = localcon.prepareStatement(sql.toString());
rs = pst.executeQuery();

//更新新旧单号用的
StringBuffer upsql = new StringBuffer("update INPUT_CARTON_DTL_SZ ");
upsql.append(" set billno=? where billno=? and QinghuoFlag='Y'");
psup = localcon.prepareStatement(upsql.toString());
localcon.setAutoCommit(true);
while(rs.next()){
psup.setString(1, rs.getString("billno"));
psup.setString(2, rs.getString("USALBILLNO"));
psup.execute();
}
System.out.println(this.cb.getContrlID()+"清洗数据结束....");
renwenli07461 2011-03-10
  • 打赏
  • 举报
回复
怎么不跟一下代码,把跟出的SQL语句粘出来
快溜 2011-03-10
  • 打赏
  • 举报
回复
on sr.LSALBILLID=dt.id是left join on。。的语法结构,scm_ownerchg_idtoid@db_cmsgz这个没看明白。
王向飞 2011-03-10
  • 打赏
  • 举报
回复
表名
,@db_cmsgz 不清楚
Atest001 2011-03-10
  • 打赏
  • 举报
回复
不知道怎么一提交,就成了这个样子。麻烦大家好好看看。
YodaYu 2011-03-10
  • 打赏
  • 举报
回复
我揣测所有@前面是不是应该有空格阿?我是菜鸟……
[Quote=引用 5 楼 atest001 的回复:]
部分代码

SQL code

System.out.println(this.cb.getContrlID()+"开始清洗数据....");

StringBuffer sql = new StringBuffer("select dt.billno,sr.USALBILLNO from ");
sql.app……
[/Quote]
happy_javaboy 2011-03-10
  • 打赏
  • 举报
回复
"@"一般是定义变量用的。。。。


”@db_cmsgz “ 像是P_SQL中自定义的的变量

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧