当前位置: 代码迷 >> Sql Server >> 两个小疑点:1.DateFormatString的{0:p} 如何样显示小数?2.SqlDataSource的查询生成器的有关问题
  详细解决方案

两个小疑点:1.DateFormatString的{0:p} 如何样显示小数?2.SqlDataSource的查询生成器的有关问题

热度:259   发布时间:2016-04-27 13:41:29.0
两个小问题:1.DateFormatString的{0:p} 怎么样显示小数?2.SqlDataSource的查询生成器的问题
问题1:

  {0;p}显示例如:20.00% ,这样让它显示成20% 或20.00000%之类的?

--

问题2:

  在SqlDataSource中‘指定自定义SQL语句或存储过程’中我写了一段代码(非‘指定来自图或表的列’):

 

select * from contracttable 
WHERE (ISNULL(@contractnumber, N'') = '未选择' OR ISNULL(ContractNumber, N'') LIKE '%' + @contractnumber + '%') AND (ISNULL(@contracttype, N'') = '未选择' OR Contracttype = @contracttype) ORDER BY contractnumber
 


  --但是一点查询生成器,就变成了

 

select * from contracttable
 WHERE (ISNULL(@contractnumber, N'') = '未选择' OR ISNULL(ContractNumber, N'') LIKE '%' + @contractnumber + '%') AND (ISNULL(@contracttype, N'') = '未选择') OR (ISNULL(@contractnumber, N'') = '未选择' OR ISNULL(ContractNumber, N'') LIKE '%' + @contractnumber + '%') AND (ContractType = @contracttype) ORDER BY 合同编号
 


----

----我似乎没写错什么地方啊,而且可以正常使用!为什么查询生成器会给我的代码 添加了一些内容呢???

--期待您的解答!谢谢!

------解决方案--------------------
把你order by 后面的列名都改了,我也不理解这是怎么了...
------解决方案--------------------
C# code
            //以下两种写法均可            Console.WriteLine (0.2.ToString("p0"));            //20%            Console.WriteLine(String.Format("{0:p5}", 0.2));            //20.00000%