分享更有价值
被信任是一种快乐

SQL Server数据库创建数据库和创建表以及条件查询怎么操作

文章页正文上

这篇文章将为大家详细讲解有关SQL Server数据库创建数据库和创建表以及条件查询怎么操作,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。  SQLServer数据库的学习过程是比较枯燥的,因为我们不但要熟练掌握企业管理器的操作,还要熟练掌握SQL语句的查询。其实这一过程是通过做大量的实践练习来熟练掌握的。下面云技术小编来讲解下SQLServer数据库创建数据库和创建表以及条件查询怎么操作?  SQLServer数据库创建数据库和创建表以及条件查询怎么操作  1、创建数据库以及创建表  createdatabaseCAPcreatetableCUSTOMERS(cidvarchar(10)primarykey,canmevarchar(10),cityvarchar(20),discntmoney)insertintoCUSTOMERSvalues(‘c001′,’TipTop’,’Duluth’,10.00)insertintoCUSTOMERSvalues(‘c002′,’Basics’,’Dallas’,12.00)insertintoCUSTOMERSvalues(‘c003′,’Allied’,’Dallas’,8.00)insertintoCUSTOMERSvalues(‘c004′,’ACME’,’Duluth’,8.00)insertintoCUSTOMERSvalues(‘c006′,’ACME’,’Kyoto’,0.00)  createtablePRODUCTS(pidvarchar(10)primarykey,pnamevarchar(10),cityvarchar(20),quantityvarchar(10),pricemoney)insertintoPRODUCTSvalues(‘p01′,’comb’,’Dallas’,’111400′,0.50)insertintoPRODUCTSvalues(‘p02′,’brush’,’Newark’,’203000′,0.50)insertintoPRODUCTSvalues(‘p03′,’razor’,’Duluth’,’150600′,1.00)insertintoPRODUCTSvalues(‘p04′,’pen’,’Duluth’,’125300′,1.00)insertintoPRODUCTSvalues(‘p05′,’pencil’,’Dallas’,’221400′,1.00)insertintoPRODUCTSvalues(‘p06′,’folder’,’Dallas’,’123100′,2.00)insertintoPRODUCTSvalues(‘p07′,’case’,’Newark’,’100500′,1.00)  createtableAGENTS(aidvarchar(4)primarykey,anamevarchar(10),cityvarchar(10),[percent]int)insertintoAGENTSvalues(‘a01′,’Smith’,’NewYork’,6)insertintoAGENTSvalues(‘a02′,’Jones’,’Newark’,6)insertintoAGENTSvalues(‘a03′,’Brown’,’Tokyo’,7)insertintoAGENTSvalues(‘a04′,’Gray’,’NewYork’,6)insertintoAGENTSvalues(‘a05′,’Otasi’,’Duluth’,5)insertintoAGENTSvalues(‘a06′,’Smith’,’Dallas’,5)  createtableORDERS(ordnovarchar(4),[month]varchar(3),cidvarchar(10),aidvarchar(4),pidvarchar(10),qtyint,dollarsmoney)insertintoORDERSvalues(‘1011′,’jan’,’c001′,’a01′,’p01′,1000,450.00)insertintoORDERSvalues(‘1012′,’jan’,’c001′,’a01′,’p01′,1000,450.00)insertintoORDERSvalues(‘1019′,’feb’,’c001′,’a02′,’p02′,400,180.00)insertintoORDERSvalues(‘1017′,’feb’,’c001′,’a06′,’p03′,600,540.00)insertintoORDERSvalues(‘1018′,’feb’,’c001′,’a03′,’p04′,600,540.00)insertintoORDERSvalues(‘1023′,’mar’,’c001′,’a04′,’p05′,500,450.00)insertintoORDERSv免费主机域名alues(‘1022′,’mar’,’c001′,’a05′,’p06′,400,720.00)insertintoORDERSvalues(‘1025′,’apr’,’c001′,’a05′,’p07′,800,720.00)insertintoORDERSvalues(‘1013′,’jan’,’c002′,’a03′,’p03′,1000,880.00)insertintoORDERSvalues(‘1026′,’may’,’c002′,’a05′,’p03′,800,704.00)insertintoORDERSvalues(‘1015′,’jan’,’c003′,’a03′,’p05′,1200,1104.00)insertintoORDERSvalues(‘1014′,’jan’,’c003′,’a03′,’p05′,1200,1104.00)insertintoORDERSvalues(‘1021′,’feb’,’c004′,’a06′,’p01′,1000,460.00)insertintoORDERSvalues(‘1016′,’jan’,’c006′,’a01′,’p01′,1000,500.00)insertintoORDERSvalues(‘1020′,’feb’,’c006′,’a03′,’p07′,600,600.00)insertintoORDERSvalues(‘1024′,’mar’,’c006′,’a06′,’p01′,800,400.00)  2、sql语句的编写  –题1:找出住在纽约的代理商的aid值和名字  selectaid,anamefromAGENTSwherecity=’NewYork’  –题2:检索订货记录中所有零件的pid值  selectdistinctpidfromORDERS  –题3:检索所有满足以下条件的顾客-代理商姓名对(cname,aname),其中的cname通过aname订了货(曾经出过错)  createtableb(cidvarchar(10),aidvarchar(4))insertintobselectcid,aidfromORDERSgroupbycid,aid  selectdistinctan免费主机域名ame,cnamefromAGENTS,CUSTOMERS,bwhereAGENTS.aid=b.aidandCUSTOMERS.cid=b.cid  –上面是通过建临时表得出结果,假如直接写呢(注意一定还要有distinct)  selectdistinctcname,anamefromagents,customers,orderswhereagents.aid=orders.aidandcustomers.cid=orders.cid  –答案:  selectdistinctCUSTOMERS.cname,AGENTS.anamefromCUSTOMERS,AGENTS,ORDERSwhereCUSTOMERS.cid=ORDERS.cidandAGENTS.aid=ORDERS.aid  –可以看出,答案非常简单  SQLServer数据库创建数据库和创建表以及条件查询怎么操作  –题4:在orders表的基础上生成含有列ordno,cid,aid,pid和profit的”表”,其中的profit是由quantity和price计算所得,方法是全部销售收入减去60%的销售收入.顾客的折扣以及代理商的酬金百分率  –答案:此题告诉我们关键字加[]的重要性,不然一直出现“关键字’percent’附近有语法错误。”  selectordno,x.cid,x.aid,x.pid,40*(x.qty*p.price)-01*(c.discnt+a.[percent])*(x.qty*p.price)asprofitfromordersasx,customersasc,agentsasa,productsaspwherec.cid=x.cidanda.aid=x.aidandp.pid=x.pid;  –题5:求出住在同一城市的顾客对。  selectdistinctc1.cname,c2.cname,c1.cityfromcustomersc1,customersc2wherec1.city=c2.cityandc1.cname  –此题的关键点即为可以给一个表取两个别名.假如题目要求在一个表中的同一列取出匹配项的话都可以用这种方法。  –题6:找出至少被两个顾客订购的产品的pid值  selectpid,count(cid)as订购产品的顾客数量fromordersgroupbypidhavingcount(cid)>=2  –此时用此法更好一些  –答案:  selectdistinctx1.pidfromordersx1,ordersx2wherex1.pid=x2.pidandx1.cid  –总结:对一个表的操作大多可以通过去别名来完成,这里应该会有冗余  –题6:查询那些订购了某个被代理商a06订购过的产品的顾客的cid值  selectdistinctcidfromorderswherepidin(selectpidfromorderswhereaid=’a06′)  –这时用in感觉浑然天成,因为这里要去的是“某一个”被代理商a06订购过的产品  –同理,对一个表里面的这种操作都可以通过取别名(且这种方式更简单)  selectdistincty.cidfromordersx,ordersywherey.pid=x.pidandx.aid=’a06’  –总结:可以用一次查询的就用一次查询,通过表取别名。关于SQL Server数据库创建数据库和创建表以及条件查询怎么操作就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

相关推荐: Power Designer怎么用

这篇文章主要介绍Power Designer怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!首先我们需要创建一个测试数据库,为了简单,我们在这个数据库中只创建一个Student表和一个Major表.其表结构和关系如下所示.看看怎样用…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册