日期:2014-05-16 浏览次数:20464 次
1.VALUE函数
语法:VALUE(EXPRESSION1,EXPRESSION2)
VALUE函数是用返回一个非空的值,当其第一个参数非空,直接返回该参数的值,如果第一个参数为空,则返回第一个参数的值。
如果不涉及时间部分,那么我们可以轻松地比较两个日期!
假设我们有下面这个 "Orders" 表:
?
1 | computer | 2008-12-26 |
2 | printer | 2008-12-26 |
3 | electrograph | 2008-11-12 |
4 | telephone | 2008-10-19 |
?
?OrderId ?ProductName ?OrderDate?
现在,我们希望从上表中选取 OrderDate 为 "2008-12-26" 的记录。
我们使用如下 SELECT 语句:
?
SELECT * FROM Orders WHERE OrderDate='2008-12-26'
?
则可取出两条记录。如果orderdate为2008-12-26 16:23:55(timestamp格式的话),再用上面的语句就查询不出来我们的结果。这是由于该查询不含有时间部分的日期。
所以需要将语句改写为:
SELECT * FROM Orders WHERE (date)OrderDate='2008-12-26'
?
?
?
1 | computer | 2008-12-26 |
3 | electrograph | 2008-12-26 |
?
?
1 | computer | 2008-12-26 |
3 | electrograph | 2008-12-26 |
?
?
3.GROUP BY语句
? 聚合语句,注意在使用的时候需要把聚合的语句都写日group by 中才可以正常使用
select a.username name,value(b.branchname,'分公司') branchname,count(a.vid) num from sdtk.statistics a,sdtk.rtrn_userinfo b where a.username = b.username group by a.username,b.branchname
?注:a.username,b.branchname需要全部添加才能正常得出结果。
?