数据库相关

sql基本概念与语法(摘自w3school)

一、SQLDML和DDL可以把SQL分为两个部分:数据操作语言(DML)和数据定义语言(DDL)。SQL(结构化查询语言)是用于执行查询的语法。但是SQL语言也包含用于更新、插入和删除记录的语法。查询和更新指令构成了SQL的DML部分:SELECT-从数据库表中获取数据UPDATE-更新数据库表中的数据DELETE-从数据库表中删除数据INSERTINTO-向数据库表中插入数据SQL的数据定义语言(DDL)部分使我们有能力创建或删除表格。我们也可以定义索引

系统 2019-08-12 01:51:46 2092

数据库相关

hdu 2825 Wireless Password

http://acm.hdu.edu.cn/showproblem.php?pid=2825hdu有必要卡时间卡的那么厉害吗无语了刚开始为了方便,我把各个字符串的首字符中没有出现的字符,又加在了根节点上,这样理解起来方便谁知道在这里就让我超时超到死呀,后来把那些本来想加的字符集成到根节点上就可以了,不就是多了20左右个字符吗有必要让我超时超的那么恶心吗无语了代码:#include#include#include

系统 2019-08-12 01:51:45 2092

数据库相关

一个存储过程

CREATEPROCEDUREProductOrderSplit@SELL_IDSNint,@SplitNumberintASbegintrandeclare@SELL_IDvarchar(100)declare@OrderNoteSNintselect@SELL_ID=SELL_ID,@OrderNoteSN=OrderNoteSNfromC_SENDPRODUCTDETAILwhereSELL_IDSN=@SELL_IDSNif(@@error<>0)

系统 2019-08-12 01:55:37 2091

数据库相关

greenplum查看表的数据分布情况来调整dk值

最近正在进行ETL后台系统数据的日志分析,查看运行耗时长的TASK,并找出耗时长的JOB,进行逻辑层面和数据库层面的优化.本文仅从数据库层面上的优化着手(包括SQL语句的调整以及greenplumtabledk的调整).查看一个耗时30分钟左右的JOB,找到相应的源表,进行如下分析:dw=#selectgp_segment_id,count(*)fromtb_namegroupbygp_segment_idorderbycount(*)descgp_seg

系统 2019-08-12 01:54:28 2091

数据库相关

树形查询的优化

一位哥们(之前的同事,某世界500强,你懂的)问我,老外要他优化SQL,一共4个,全是树形查询的。前面3个跑半个多小时,后面一个跑1个小时,总共要跑2个半小时。问有啥方法可以优化。因为SQL类型基本上一样,这里指贴一个SQL其实这些SQL都是insertinto...select....要想INSERT快,就必须SELECT块SQL语句如下selectrownum,adn,zdn,'cable'from(selectdistinctconnect_by_r

系统 2019-08-12 01:54:18 2091

数据库相关

关于在存储过程中动态选择数据表名

今天写一个功能,要求站点页面根据不同的城市显示当前城市的内容。这个功能主要是分析用户的Ip,根据Ip获取用户所在的城市,然后选择用户所在城市的内容。由于数据库架构是不同城市的内容分别放在不同的表中,如tb_1_Info,tb_2_Info,其中的数字就是城市对应的编号。在完成这个功能的过程中,我对数据库访问的用的是存储过程,但以前没有碰到在存储过程中动态的选择数据表名称。经过一段时间摸索,还是实现了这个功能,特记录一下:存储过程代码如下:1ALTERPRO

系统 2019-08-12 01:53:14 2091

数据库相关

簡單SQL存儲過程實例

实例1:仅仅返回单一记录集的存储过程。银行存款表(bankMoney)的内容例如以下IduserIDSexMoney001Zhangsan男30002Wangwu男50003Zhangsan男40要求1:查询表bankMoney的内容的存储过程createproceduresp_query_bankMoneyasselect*frombankMoneygoexecsp_query_bankMoney注*在使用过程中仅仅须要把中的SQL语句替换为存储过程名,

系统 2019-08-12 01:52:34 2091

数据库相关

sql语法:inner join on, left join on, right

innerjoin(等值连接)仅仅返回两个表中联结字段相等的行leftjoin(左联接)返回包含左表中的全部记录和右表中联结字段相等的记录rightjoin(右联接)返回包含右表中的全部记录和左表中联结字段相等的记录INNERJOIN语法:INNERJOIN连接两个数据表的使用方法:SELECT*FROM表1INNERJOIN表2ON表1.字段号=表2.字段号INNERJOIN连接三个数据表的使用方法:SELECT*FROM(表1INNERJOIN表2ON

系统 2019-08-12 01:52:02 2091

数据库相关

用标准的SQL语句实现查询记录分页

在绝大多数的应用中,返回大量的符合条件的记录是司空见惯的,最典型的莫过于搜索了。在搜索的应用中,用户给出搜索条件,服务器查出符合条件的记录。但往往搜索会返回大量的数据记录,如果在网页中,往往是通过分页的方式来实现,页面提供诸如上一页,下一页等等按钮来实现分页。现在主要有以下几中方式来实现分页:1.EJB的Find方法2.在显示第一页前将所有的记录放在collection对象中,后续的各页都在内存中取。3.每一页都到数据库作一次重复的查询,然后将符合条件的记

系统 2019-08-12 01:55:28 2090

数据库相关

SQL游标使用

---使用循环控制declare@aintset@a=0while@a<10beginprint@aset@a=@a+1end--获取系统时间selectgetdate()execsp_addlinkedserver'mailoudb','',''EXECsp_addlinkedserver'DBLink','','SQLOLEDB','192.168.1.168'EXECsp_addlinkedsrvlogin'DBLink','false',null,

系统 2019-08-12 01:54:54 2090

数据库相关

怎样让.Net2.0的Membership使用已存在的Sql Ser

VS2005ASP.NET配置工具可以很方便地配置和使用Membership功能,如果你有安装SqlServerExpress的话,ASP.NET配置工具会帮你生成数据库及更改Web.Config文件以便使用membership的各种功能。但是如果没有安装SqlServerExpress的话,或者是想使用已存在的数据库的话,你会发现ASP.NET配置工具根本就没办法帮你初始化非SqlServerExpress数据库。这个时候,就要手动地进行MemberSh

系统 2019-08-12 01:52:15 2090

数据库相关

多表查询用 join 好吗

SQL连接查询的由来:人们对20实际80年代的SQL标准提出批评,认为SELECT语句中无直接的连接或自然连接操作。SQL吸收了这个意见,用较为直接的形式表示各式各样的连接操作,这些操作可在FROM字句中以直接的形式指出。在书写两个关系的连接操作时,SQL2把连接操作符分成连接类型和连接条件两部分(如果图1)连接类型决定了如何处理连接条件中不匹配的元祖。连接条件决定了两个关系中哪些元祖应该匹配,以及连接结果中出现哪些属性。图1连接类型连接条件INNERJO

系统 2019-08-12 01:51:45 2090

数据库相关

生成纯数字随机编号的示例.sql

--取得随机数的视图CREATEVIEWv_RANDASSELECTre=STUFF(RAND(),1,2,'')GO--生成随机编号的函数CREATEFUNCTIONf_RANDBH(@BHLenint)RETURNSvarchar(50)ASBEGINDECLARE@rvarchar(50)IFNOT(ISNULL(@BHLen,0)BETWEEN1AND50)SET@BHLen=10lb_bh:--生成随机编号的处理SELECT@r=reFROMv_

系统 2019-08-12 01:51:40 2090

数据库相关

RMAN 还原与恢复

--====================--RMAN还原与恢复--====================在Oracle中,三大文件即控制文件,数据文件,日志文件的丢失与破坏都将需要使用还原或恢复来使数据库正常化。而RMAN还原与恢复是实现数据库完整性、可靠性必不可少的手段之一。还原简言之即是将所需的文件从备份中复制到原来文件所在的路径。还原通常可以包括数据库、表空间、数据文件级别的还原。通常还原后的内容会滞后于最新的数据库SCN,因此将归档日志、联机

系统 2019-08-12 01:55:07 2089

数据库相关

hdu 4602 Partition

http://acm.hdu.edu.cn/showproblem.php?pid=4602输入n和k首先f(n)中k的个数等于f(n-1)中k-1的个数最终等于f(n-k+1)中1的个数舍s(n)=f(n)+f(n-1)+....+f(1)则f(n)=s(n)-s(n-1)由于s(n)=s(n-1)+2^(n-2)+s(n-1)=2*(s(n-1))+2^(n-2)=2^(n-1)+(n-1)*2^(n-2)=(n+1)*2^(n-2)代码:#inclu

系统 2019-08-12 01:55:07 2089