sqlserver中子类,在sql语言中子查询
MYSQL,SQLserver中DATE的问题
对日期的格式化主要是java.text.DateFormat和java.text.SimpleDateFormat,前者是抽象类,后者是实现类
创新互联建站-专业网站定制、快速模板网站建设、高性价比长清网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式长清网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖长清地区。费用合理售后完善,10余年实体公司更值得信赖。
一般要对日期进行格式化使用如下方式
Date date=new Date();
DateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd");
String str=dateFormat.format(date);//将日期以“年-月-日”的方式转成字符串
Date newDate=dateFormat.parse(str);//将字符串以“年-月-日”的方式解析成日期
数据库中取日期一般有3种方式
resultSet.getDate(1)//只取日期
resultSet.getTime(1)//只取时间
resultSet.getTimestamp(1)//取日期和时间
java.sql.Date与java.util.Date的关系是继承关系
java.util.Date是父类
java.sql.Date是子类
根据Java多态原则,从数据库中取出可以直接将sql.Date赋给util.Date
存入则不行,一般使用new java.sql.Date(new java.util.Date().getTime());
java.sql.Date没有无参构造,只有一个带long型的构造,传入的是1970-1-1 00:00:00开始到当前时间的毫秒数,可以用java.util.Date的getTime方法获取
一条sql语句顺序查询出父类的所有子类 如下图:用的是sql Server 2008
SQL 2005及以上可以使用CTE实现递归。
with tmp (ID,Name,ParentID,Level,HierarchyCode)
as(
select ID,Name,ParentID,1,convert(varchar,convert(varchar,ParentID)+'-'+convert(varchar,ID))
from 表名 where ParentId=0 --已知根节点是0
UNION ALL
select a.ID,a.Name,a.ParentID,Level+1,convert(varchar,HierarchyCode+'-'+convert(varchar,a.ID))
from 表名 a inner join tmp b on a.ParentID=b.ID
)
select * from tmp order by HierarchyCode
结果如下:
如何只用sql语句查询一个类别下面所有子类包含的信息?
Sql Server 2000因为你这里说了只有三级分类,所以我就不写Sql函数了,得到华北下面所有子类别的ClassID(不包括华北的ClassID)select ClassID from Newclass where classParentID in (select ClassID from Newclass where classParentID=51)
根据类别ClassID表查询新闻select * from News where ClassID in (select ClassID from Newclass where classParentID in (select ClassID from Newclass where classParentID=51))
ok了
当前名称:sqlserver中子类,在sql语言中子查询
文章地址:http://myzitong.com/article/phecdg.html