sql语言中的case when (来自我尊敬的一位老师小F)
sql语言中有没有类似C语言中的switch case的语句??
没有,用case when 来代替就行了.
例如,下面的语句显示中文年月
select getdate() as 日期,case month(getdate())
when 11 then '十一'
when 12 then '十二'
else substring('一二三四五六七八九十', month(getdate()),1)
end+'月' as 月份
=====================================================================
CASE 可能是 SQL 中被误用最多的关键字之一。虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法。例如,你可以在 WHERE 子句中使用 CASE。
首先让我们看一下 CASE 的语法。在一般的 SELECT 中,其语法如下:
SELECT <myColumnSpec> =
CASE
WHEN <A> THEN <somethingA>
WHEN <B> THEN <somethingB>
ELSE <somethingE>
END
在上面的代码中需要用具体的参数代替尖括号中的内容。下面是一个简单的例子:
USE pubs
GO
SELECT
Title,
'Price Range' =
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price < 10 THEN 'Bargain'
WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END
from titles
ORDER BY price
GO
这是 CASE 的典型用法,但是使用 CASE 其实可以做更多的事情。比方说下面的 GROUP BY 子句中的 CASE:
SELECT 'Number of Titles', Count(*)
from titles
GROUP BY
CASE
WHEN price IS NULL THEN 'Unpriced'
&n
相关文档:
首先计算机上必须安装oracle,并配置好服务名
安装oracle的过程中一般会要求建立一个数据库,也可以之后再创建
这个后面有一个 数据库配置助理 (创建修改数据库的,一般密码创建要求字母开头,大于7位啥的)和一个net配置助理(添加或者修改一个数据库服务名),一般用plsql developer远程操作oracle数据库 ......
Java数据类型
Hibernate数据类型
标准SQL数据类型
byte
byte
TINYINT
short
short
SMALLINT
int
integer
INGEGER
long
long
BIGINT
float
float
FLOAT
double
double
DOUBLE
java.math.BigDecimal
big_decimal
NUMERIC
char, java.lang.Character
character
CHAR(1)
boolean, java.lang.Boole ......
1.定义基本表语句
语法:
USE 数据库名 CREATE TABLE 表名 (列名 类型(大小) DEFAULT'默认值',
& ......
当索引所在页面的基于主关键字的逻辑顺序,和数据文件中的物理顺序不匹配时,碎片就产生了。所有的叶级页包含了指向前一个和后一个页的指针。这样就形成一个双链表。理想情况下,数据文件中页的物理顺序会和逻辑顺序匹配。整个磁盘的工作性能在物理顺序匹配逻辑顺序时将显著提升。对某些特定的查询而言,这将带来极佳的性能 ......
--SQL 速查手册
/*******************************************/
SELECT
--用途:从指定表中取出指定列的数据
--语法:
SELECT column_name(s) from table_name
--主要字句可摘要为:
SELECT select_list [INTO new_table]
from table_source
[WHERE search_condition]
[GROUP BY group_by_expression]
[HAVING s ......