请教各位:
1.在pl/sql中有代码美化器,在Sql Server中有么?
2.写了一个查询语句查询表A,然后在表A中加了一个字段,但是那个查询语句中无法立刻查到新加的字段,重开Sql Server后才能查到,求解为什么?
3.在Oracle中一个数据集可以用括号括起来,空格指定别名,在Sql Server中如何做多,如下面语句
A那边报错:
select b.oid, userInfo+' 预定'+b.mealCount+'份',b.insertTime,b.getTime,s.suppName,
b.bookReason, case b.isEnter when '0' then '否' when '1' then '是' end isEnter,
case b.isBack when '0' then '否' when '1' then '是' end isBack
from BookMealRecord b
left join (select d.departmentName+'——'+u.userName,u.userId userInfo
from UserInfo U
left join Department d
on u.userInDepartmentId=d.departmentId) A on b.userId=A.userInfo
left join SupplierInfo s on s.suppId=b.SupplyId
SQL?Server
------解决方案--------------------
#1.无。可用第三方RedGate中的SQL Prompt 中的FORMAT命令
#2.如果是实体表,不应该。既然重启起效,说明已经commit并写到了日志中,即使没写到硬盘上,也应该可以读取内存中的数据呀。这种问题几乎很少见,不解。
#3.--结果集也用()括起来,SQL SERVER中叫做子查询
--别名
SELECT 'aaa' AS fieldname
SELECT 'aaa' fieldname
SELECT fieldname = 'aaa'
------解决方案--------------------
1. 有,但是默认安装中没有,是一个插件. 好像就SQL Beautifier
2. 按ctrl+shift+R刷新窗口就行.
3. 语句合法,没看出来错误. 你把错误信息发出来看看.
有可能是on链接错误,b.userId 和 A.userInfo 属性是不是相同?
------解决方案--------------------
SELECT b.oid ,
a.userInfo + ' 预定' + b.mealCount + '份' ,
b.insertTime ,
b.getTime ,
s.suppName ,
b.bookReason ,
CASE b.isEnter
WHEN '0' THEN '否'
WHEN '1' THEN '是'