[请问] 数据库的基础问题(已解)

楼主: maky90071 (maky90071)   2016-06-06 15:45:07
如果有一题的设定条件是
要找出在产品表格里价钱为空值的所有字段
照理说是这样
Select *
from product
where unitPrice is null;
那我的设定条件可否改为
where unitprice !="%";
请原谅我文组的问这种基本问题
但我真的需要解答
非常感谢!!
作者: Schottky (顺风相送)   2016-06-06 15:47:00
不可以
作者: OrzOGC (洞八达人.拖哨天王)   2016-06-06 15:49:00
不一样的东西啊
楼主: maky90071 (maky90071)   2016-06-06 15:51:00
请问!="%" 不能解释为不等于所有字串吗?因为刚刚考试的时候问老师,老师说他也没这样试过..
作者: OrzOGC (洞八达人.拖哨天王)   2016-06-06 15:54:00
不等于某字串和完全没东西是两回事啊...
作者: Schottky (顺风相送)   2016-06-06 15:55:00
基本上你的写法错好多地方实在懒得一一吐槽...比较重要的应该是,万用字符 % 只能用在 LIKE 吧
楼主: maky90071 (maky90071)   2016-06-06 15:56:00
欸QQ 我们才刚开始教 课本就写到这样...喔喔!! 原来如此谢谢两位 让我矛塞顿开orz
作者: Schottky (顺风相送)   2016-06-06 15:59:00
再来如二楼所说,NULL 和空白字串是不一样的东西而且看起来你要处理的那个字段似乎是数值(价钱)不是字串
楼主: maky90071 (maky90071)   2016-06-06 16:04:00
那假如说把价钱改为书名,那会变成字串吗?
作者: Schottky (顺风相送)   2016-06-06 16:09:00
书名就会设定成字串了没错,但 null 和空白字串仍然不同你可以用 datalength(书名) = 0 同时找出 NULL 和空白实务上你不管怎么去防,就是有人会在书名打 1 或 . 避开
楼主: maky90071 (maky90071)   2016-06-06 16:16:00
好的 谢谢s大解惑 课本上真的没写说%只能用在like上...

Links booklink

Contact Us: admin [ a t ] ucptt.com