-
SQL直接操作excel表(查询/导入/插入)
复制代码代码如下:--配置权限EXECsp_configure'showadvancedoptions',1;GORECONFIGURE;GOEXECsp_configure'AdHocDistributedQueries',1;GORECONFIGURE;GOSQLSERVER和EXCEL的数据导入导出1、在SQLSERVER里查询Excel数据:--======================================================复制代码代码如下:SELECT*FROMOpenDataSource('Microsoft.Jet.OLEDB.4.0','DataSource="c:book1.xls";UserID=Admin;Password=;Extendedproperties=Excel5.0')...[Sheet1$]下面是个查询的示例,它通过用于Jet的OLEDB提供程序查询Excel电子表格。SELECT*FROMOpenDataSource('Microsoft.Jet.OLEDB.4.0','DataSource="c:Financeacc...
数据库操作教程 2022-09-23 16:47:48 -
sql截取域名的问题
最近由于对数据库的域名要排重,因为sql直接使用起来方便一些,就整理下A.截取从字符串左边开始N个字符复制代码代码如下: Declare@S1varchar(100) Select@S1='https://www...
数据库操作教程 2022-09-23 16:47:48 -
SQL中Group分组获取TopN方法实现可首选row_number
有产品表,包含id,name,city,addtime四个字段,因报表需要按城市分组,统计每个城市的最新10个产品,便向该表中插入了100万数据,做了如下系列测试:复制代码代码如下:CREATETABLE[dbo].[products]([id][int]IDENTITY(1,1)NOTNULL,[name][nvarchar](50)NULL,[addtime][datetime]NULL,[city][nvarchar](10)NULL,CONSTRAINT[PK_products]PRIMARYKEYCLUSTERED([id]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]1、采用row_number方法,执行5次,平均下来8秒左右,速度最快。复制代码代码如下:selectno,id,name,cityfrom(selectno=row_number()over(pa...
数据库操作教程 2022-09-23 16:47:47 -
关于SQLServer查询语句的使用
一.查询第二个字母是t或者a的雇员的全部信息复制代码代码如下: select* fromemployees wherefirstnamelike'_[t,a]%'注意:在sql中%表示字符串,所以不可像matlab一样用其注释,两个双斜线好像也不行,/**/可以,有网友说sql单行注释为--二.更改字段名复制代码代码如下: select'名字'=firstname,'姓氏'=lastname fromemployees wherefirstnamelike'_[t,a]%'或者复制代码代码如下: select firstnameas'名字',lastnameas'姓氏' fromemployees wherefirstnamelike'_[t,a]%'三.top关键字复制代码代码如下: /*检索出符合条件的前70%条记录*/ select top70percentfirstnameas'名字',lastnameas'姓氏' fromemployee...
数据库操作教程 2022-09-23 16:47:41 -
SQL级联删除与级联更新的方法
复制代码代码如下:ondeletecascade当你更新或删除主键表时,那么外键表也会跟随一起更新或删除,需要在建表时设置级联属性CREATETABLECountries(CountryIdINTPRIMARYKEY)INSERTINTOCountries(CountryId)VALUES(1)INSERTINTOCountries(CountryId)VALUES(2)INSERTINTOCountries(CountryId)VALUES(3)CREATETABLECities(CityIdINTPRIMARYKEY ,CountryIdINTREFERENCESCountriesONDELETECASCADE);INSERTINTOCitiesVALUES(1,1)INSERTINTOCitiesVALUES(2,1)INSERTINTOCitiesVALUES(3,2)CREATETABLEBuyers(CustomerIdINTPRIMARYKEY,CityIdINTREFERENCESCitiesONDELETECASCADE);INSERTINTOBuyers&...
数据库操作教程 2022-09-23 16:47:39 -
SQLServer控制语句的基本应用
1.语句块(BEGIN…END)语句块语法如下: BEGIN <SQL语句或程序块> ENDBEGIN…END用来设定一个语句块,可以将多条Transact-SQL语句封装起来构成一个语句块,在处理时,整个语句块被视为一条语句。BEGIN…END经常用在条件语句中,如IF…ELSE或WHILE循环中...
数据库操作教程 2022-09-23 16:47:34 -
sqlserver数据库使用存储过程和dbmail实现定时发送邮件
上文已讲过如何在数据库中配置数据库邮件发送(备注:数据库邮件功能是基于SMTP实现的,首先在系统中配置SMTP功能。即在“添加/删除程序”面板中“增加/删除WINDOWS组件”,选中并双击打开"IIS"或“应用程序”,勾选"SMTPSERVICE"然后一路点“下一步”即可...
数据库操作教程 2022-09-23 16:47:34 -
sqlserver中合并某个字段值的实例
有表如下:如何获得如下结果:解法使用xml转换代码如下:复制代码代码如下: CREATETABLEbody ( IDint, BODYnvarchar(20) ) go INSERTINTObodyVALUES(1,'aaaa') INSERTINTObodyVALUES(2,'bbbb') INSERTINTObodyVALUES(1,'cccccc') INSERTINTObodyVALUES(3,'ddddd') go SELECT*FROMbody SELECTdistincta.ID,stuff((SELECT','+BODYFROMbodyWHEREID=a...
数据库操作教程 2022-09-23 16:47:32 -
高效的SQLSERVER分页查询(推荐)
第一种方案、最简单、普通的方法:复制代码代码如下:SELECTTOP30*FROMARTICLEWHEREIDNOTIN(SELECTTOP45000IDFROMARTICLEORDERBYYEARDESC,IDDESC)ORDERBYYEARDESC,IDDESC 平均查询100次所需时间:45s第二种方案:复制代码代码如下:SELECT*FROM( SELECTTOP30*FROM(SELECTTOP45030*FROMARTICLEORDERBYYEARDESC,IDDESC)fORDERBYf.YEARASC,f.IDDESC)sORDERBYs.YEARDESC,s.IDDESC 平均查询100次所需时间:138S第三种方案:复制代码代码如下:SELECT*FROMARTICLEw1,( SELECTTOP30IDFROM ( &nbs...
数据库操作教程 2022-09-23 16:47:31 -
SQLServer2012在开发中的一些新特性
一、增加了Sequence对象。这个对于Oracle用户来说是最熟悉不过的数据库对象了,现在在SQLServer中终于也看到了类似的对象,只是在使用的语法上有一点点不一样...
数据库操作教程 2022-09-23 16:47:30 -
sqlwhere1=1的优缺点分析
一、不用where 1=1 在多条件查询中的困扰 举个例子,如果您做查询页面,并且,可查询的选项有多个,同时,还让用户自行选择并输入查询关键词,那么,按平时的查询语句的动态构造,代码大体如下: 复制代码代码如下: stringMySqlStr=”select*fromtablewhere”; if(Age.Text.Lenght>0) { MySqlStr=MySqlStr+“Age=“+“'Age.Text'“; } if(Address.Text.Lenght>0) { MySqlStr=MySqlStr+“andAddress=“+“'Address.Text'“; } ①种假设 如果上述的两个IF判断语句,均为True,即用户都输入了查询词,那么,最终的MySqlStr动态构造语句变为: 复制代码代码如下: MySqlStr=”select*fromtablewhereAge='18' andAddress='云南省文山州广南县小波吗村'” 可以...
数据库操作教程 2022-09-23 16:47:27 -
SQLServer游标的使用/关闭/释放/优化小结
游标是邪恶的!在关系数据库中,我们对于查询的思考是面向集合的。而游标打破了这一规则,游标使得我们思考方式变为逐行进行.对于类C的开发人员来着,这样的思考方式会更加舒服...
数据库操作教程 2022-09-23 16:47:25