快速版:以下是最好的,为什么?(或者,还有更好的方法):
SELECT FLOOR(LOG10(Number))+1 AS NumLength FROM Table
SELECT LEN(CONVERT(VARCHAR, Number)) AS NumLength FROM Table
SELECT LEN(CAST(Number AS VARCHAR(10))) AS NumLength FROM Table
Run Code Online (Sandbox Code Playgroud)
更详细一点:
我希望找出最有效的机制来计算整数的字符串表示的长度(更具体地说,是一个自然数 - 总是> 0).
我正在使用MS SQL Server(2005).
我已经提出了上面的3种解决方案,所有这些解决方案似乎都运行良好.
我知道第三个版本可能存在非常大的整数问题,但是现在我们可以假设"数字"长度不超过9位十进制数.
更详细的说明:( 你不必阅读这一点来回答我的问题)
这个查询在事务处理环境中被大量使用.
到目前为止,我已经假设"数字"总是正好是6位数.
但是,现在我必须更新代码以支持4到9位数字.
此SQL是识别卡的卡方案的条件的一部分.
完整查询尝试在开始和结束范围内查找与卡号开头匹配的记录.
所以完整的SQL条件将是这样的:
WHERE
-- Start and End match
((Start=End OR End=0) AND (Start=CAST(LEFT('<card number>', FLOOR(LOG10(Start))+1) AS BIGINT))) OR
-- Start != End
-- >= Start
(Start<=CAST(LEFT('<card number>', FLOOR(LOG10(Start))+1) AS BIGINT) AND
-- <= End
End>=CAST(LEFT('<card number>', FLOOR(LOG10(Start))+1) AS BIGINT))
Run Code Online (Sandbox Code Playgroud)
注意:
我可以重新设计表以使用VARCHAR而不是INT.这将允许我使用"LEN(开始)"而不是"FLOOR(LOG10(开始))+ …
我以前使用Eclipse Galileo,但现在我有Helios.Galileo曾经自动添加我的servlet web.xml,但是在Helios我自己必须这样做.
我可以配置一些东西让它再次自动化吗?
我有一个项目的工作副本,没有任何源控制元数据.现在,我想在这个文件夹中执行相当于git-clone的操作,并保留我的本地更改.
git-clone不允许我克隆到现有文件夹中.这里的最佳做法是什么?
我有一个导航菜单,如下所示:

我必须把它分成三个部分(左,中,右).
我写了这样的html和css代码:
<span id="nav-left-img"></span>
<ul id="navigation">
<li>Home</li>
<li>About Us</li>
<li>Products</li>
<li>Contact Us</li>
</ul>
<span id="nav-right-img"></span>
Run Code Online (Sandbox Code Playgroud)
这是css:
ul#navigation
{
background: url('../img/menu-c.png') repeat-x;
height: 45px;
clear: both;
width: 420px;
}
ul#navigation li
{
float: left;
text-align: center;
width: 100px;
padding-top: 10px;
}
#nav-left-img
{
background: url('../img/menu-l.png') no-repeat;
height: 45px;
width: 10px;
}
Run Code Online (Sandbox Code Playgroud)
在span似乎并不做的伎俩; 如果我使用div它有效.代码有什么问题?如果我使用div而不是span或者我应该坚持div加入左右图像,这样可以吗?我该怎么做span?
我认为可以接受的是,作为Java中的一般规则(也许是任何具有异常处理的语言),应该尽量避免使用异常处理来实际处理业务逻辑.一般来说,如果预计会发生某种情况,那么应该检查它并直接处理它,而不是依赖于异常处理来为您进行检查.例如,以下不被视为良好做法:
try{
_map.put(myKey, myValue);
} catch(NullPointerException e){
_map = new HashMap<String, String>();
}
Run Code Online (Sandbox Code Playgroud)
相反,懒惰初始化应该更像这样:
if(_map == null){
_map = new HashMap<String, String>();
}
_map.put(myKey, myValue);
Run Code Online (Sandbox Code Playgroud)
当然,可能存在比简单处理延迟初始化更复杂的逻辑.因此,鉴于此类事情通常不受欢迎......如果有的话,依靠发生某种业务逻辑的异常是一个好主意吗?是否准确地说任何一个人感到被迫使用这种方法的实例是否真的突出了所使用的API的弱点?
我想知道是否有任何方法可以像浮点数或双打一样以短的方式声明一个字节变量?我的意思是喜欢5f和5d.当然我可以写byte x = 5,但如果你使用var局部变量,这有点无关紧要.
我试图验证一些信息,所以我添加了一个验证器并在post方法的参数中使用了@Valid:
@Controller
@RequestMapping("/user.htm")
public class UserController {
@Autowired
private IUserService userService;
@RequestMapping(method = RequestMethod.GET)
public String userInfo(Model model) {
....
return "user";
}
@RequestMapping(method = RequestMethod.POST)
public String userInfoResult(@Valid @ModelAttribute UserForm userForm, BindingResult result, Model model ) {
UserInfo stat = userService.getStatitisque(userForm.getSearchCritera());
userForm.setListeExpediteur(listeExpediteur);
userForm.setUserInfo(stat);
model.addAttribute("userForm", userForm);
}
}
public class UserFormValidator implements Validator {
@Override
public boolean supports(Class<?> type) {
return UserForm.class.equals(type);
}
@Override
public void validate(Object o, Errors errors) {
UserForm userForm = (User) o;
...
}
}
Run Code Online (Sandbox Code Playgroud)
当我调试时,我从未进入UserFormValidator类. …
我想在图形图形中写一个整数,并希望它定位在中心.
有没有办法这样做?
目前我正在写这个不好的:
Font font = new Font("Arial", Font.BOLD, 20);
g.setFont(font);
g.setColor(this.color);
g.fillOval(b.x, b.y, b.width, b.height);
g.setColor(Color.black);
g.drawString("1", b.x + b.width/2 , b.y+ b.height/2);
Run Code Online (Sandbox Code Playgroud)
其中b是一个矩形.
这是一个真正的超新手问题.
我有一个存储在数据库中的年龄.
当我从数据库中获得年龄时,我想获得每个数字.
例:
User.age = 25
Run Code Online (Sandbox Code Playgroud)
我想得到以下内容:
first = 5
second = 2
Run Code Online (Sandbox Code Playgroud)
我似乎无法从数据中将其作为修复数量来解决这个问题.
任何人都知道干净简单的解决方案.
Eclipse的格式化选项避免了我与其他用户的许多冲突,并确保我的代码看起来总是"干净"(特别是关于我的git提交).
我知道Java编辑器中的"保存时格式化"选项,但我在C/C++中找不到.
这是故意的吗?
我希望有一天能看到这样的选择吗?或者也许我看不够?
java ×3
eclipse ×2
.net ×1
automation ×1
c ×1
c# ×1
c++ ×1
coding-style ×1
css ×1
git ×1
html ×1
ruby ×1
servlets ×1
spring ×1
spring-mvc ×1
sql ×1
sql-server ×1
swing ×1
validation ×1
value-type ×1