关于sql的链接查询
首先给出两张测试表
a(aid int, adata varchar(20)) b(bid int, bdata varchar(20))
1.join 与 inner join
执行如下语句:
select * from a join b on a.aid = b.bid;
我们会得到如下的结果:
AID ADATA BID BDATA
---------- ---------------------------------------- ---------- ----------------------------------------
1 a1 1 b1
2 a2 2 b2
我们在执行:select * from a inner join b on a.aid = b.bid;
这时会发现执行的结果和上面一样,于是我在这里认为,单写一个join的语句,默认使用inner形式连接查询。这时我也会想到用标准的多表查询去实现,如:select * from a, b where a.aid = b.bid。
上面这些都是在oracle和mysql中测试过的,当然下面所提到的也会做同样的测试。
2.left join 与 left outer join
执行如下语句:
select * from a left join b on a.aid = b.bid;
得到的结果如下:
AID ADATA&
相关文档:
说到软解析(soft prase)和硬解析(hard prase),就不能不说一下Oracle对sql的处理过程。当你发出一条sql语句交付Oracle,在执行和获取结果前,Oracle对此sql将进行几个步骤的处理过程:
1、语法检查(syntax check)
检查此sql的拼写是否语 ......
1.不用退出SQL2000安装程序,直接切换到桌面.
2.打开注册表编辑器(在“运行”中敲入“regedit”之后回车即可),定位到注册表的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager节点.
3.单击“Session Manager”这个节点, ......
---//创建分区
CREATE PARTITION FUNCTION MarketInfo_Bak_partfunc(int)
AS RANGE RIGHT
FOR VALUES (10000,25000,40000)
--//创建分区架构
CREATE PARTITION SCHEME MarketInfo_Bak_partscheme
AS PARTITION MarketInfo_Bak_partfunc
TO (fg1, fg2, fg3, fg4) --//fg1...fg4文件组名
--//对表进 ......
一、使用参数化输入。存储过程里尽量避免语句拼接。
二、对于一些数据库,必须设置权限,甚至设置到字段。
三、始终通过测试类型、长度、格式和范围来验证用户输入。
四、过滤敏感字符。
Function ReplaceStr(Str)
Str=Trim(Str)
Str=Replace(Str,"'","'")
Str=Replace(Str,";",";")
Str=Rep ......
--创建游标
DECLARE Cursor1 CURSOR FOR
SELECT NODE_NO,NODE_VALUE,SUM(RESALE_SUM-RESALERETU_SUM+SALE_SUM-SALERETU_SUM) sale_sum,
SUM(STORE_SUM) sum_store,SUM(STORE_SUM) store_sum,
sum(RESALE_PROFIT-RESALERETU_PROFIT+SALE_PROFIT-SALERETU_PROFIT-ADJUST_PROFIT) sale_profit
from ......