首页新闻找找看学习计划

sql查询语句问题

0
悬赏园豆:5 [已关闭问题] 关闭于 2013-09-13 16:26

 string where = " CatalogId=@CatalogId and ArticleStatus&@ArticleStatus<>0";

这是.NET里面的参数化查询方式,我不是很清楚“ArticleStatus&@ArticleStatus<>0”当中的‘&’是什么意思,为什么可以这样写,麻烦知道的告知一下。谢谢。

问题补充:

select top 10 * from ArticleCatalog
 where   CatalogStatus&1<>0

 

像这样查询出来的是

有能够讲得更加明白的吗?

行进的主页 行进 | 初学一级 | 园豆:105
提问于:2013-03-16 21:01
< >
分享
所有回答(3)
0

我没猜错的话这个应该为以后切割字符串用的吧!希望对你有帮助!

小银光 | 园豆:25 (初学一级) | 2013-03-16 22:46

谢谢你的回答。不是切割字符串,这里就是sql语句的查询条件部分,后面没有对这个字符串进行其他操作

支持(0) 反对(0) 行进 | 园豆:105 (初学一级) | 2013-03-17 08:31
0

ArticleStatus&@ArticleStatus<>0

这里的“&”应该是“逻辑与”的用法!你可以把“@ArticleStatus<>0”直接换成“0”或者“1”测试一下。希望是正确的,验证后记得告诉我结果啊!

周大伟 | 园豆:202 (菜鸟二级) | 2013-03-17 00:44

谢谢你的回答,这里执行的是逻辑运算这是肯定的,我只是不清楚为什么可以用这样的语法而已,而且不单单是0,1的值

如上图

支持(0) 反对(0) 行进 | 园豆:105 (初学一级) | 2013-03-17 08:57
0

这是位与运算 http://msdn.microsoft.com/en-us/library/ms174965(SQL.105).aspx

位与的意思是计算的两端,换算为字节,一一对应起来,只有两者都为1的返回1,其他都返回0,最后得出结果

陈希章 | 园豆:2338 (老鸟四级) | 2013-03-17 08:00

谢谢你的回答,这是sql里面的位运算,我大致了解了

支持(0) 反对(0) 行进 | 园豆:105 (初学一级) | 2013-03-17 09:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册