易截截图软件、单文件、免安装、纯绿色、仅160KB

存储过程中Sql 语句查询速度优化 某例

之前的SQL语句如下,查询很慢,6分钟多都没有结果显示,一开始我以为是6张表联合查询带来的速度慢的问题。
后来发现因为PO_D.ORDNO与PO_H.ORDNO相同,把绿色部分替换为紫色的部分,
把PO_D替换为PO_H,10秒钟就能查询出来
PS:PO_D中101401笔数据,PO_H中51341笔数据。
虽没有想明白替换之后提速到如此之快仅10秒,与6分钟未出结果差异太大,但毋庸置疑的是应该以数据量少的表
作相关外键查询是可以提高速度的。所以在写SQL语句时注意此处。
 
SELECT (SELECT DEPT_CODE from AM_EMPLOYEE WHERE EMP_NO=PO_H.APPLICANT) AS DEPT_CODE,
       (SELECT LOGIN_NAME from AM_EMPLOYEE WHERE EMP_NO=PO_H.APPLICANT) AS LOGIN_NAME,
       PO_D.FPRNO,
       PO_D.ORDNO,
       PO_H.MDATE,
       PO_T.ITDSC,
       PO_T.ITEMSPEC,
       PO_D.UMORD,
       PO_D.ACTQY,
       PO_D.POISQ,
       PV.VENDOR,
       PV.VNDNAM,
       PO_H.CURCY,
       PO_D.UNITP,
       PO_T.ECDNO,
       PC_PACN_LIST.PRICE,
       (PC_PACN_LIST.PRICE-PO_D.UNITP) AS BALANCE
    from
       IPPOHM AS PO_H,
       IPPODM AS PO_D,
       IPAVM  AS PV,
       IPPOTM AS PO_T,
       PC_PACN_LIST
    WHERE
       PO_D.ORDNO = PV.VORDNO
       AND
       PO_H.ORDNO =PO_D.ORDNO
       AND
       PO_D.ORDNO


相关文档:

C#打包SQL数据库部署安装

参考《ASP.NET与SQL一起打包部署安装》,这篇文章是针对VB.NET与SQL 一起打包的,但是我使用的是C#,当然只要修改一下主要安装类库就行了!C#的类库代码如下:DBCustomAction.cs
using System;
using System.Collections;
using System.Data.SqlClient;
using System.ComponentModel;
using System.Configuration.Install; ......

启动PL/SQL Developer 报字符编码不一致错误

错误如下:
Database character set (AL32UTF8) and Client character set (ZHS16GBK) are different.
Character set conversion may cause unexpected results.
Note: you can set the client character set through the NLS_LANG environment variable or the NLS_LANG registry key in
HKEY_LOCAL_MACHINE\SOFTWARE\ ......

高效SQL分页存储过程

CREATE PROCEDURE fenye
@tblName varchar(255)='wdf1', -- 表名
@strGetFields varchar(1000) = '*', -- 需要返回的列
@fldName varchar(255)='userid', -- 排序的字段名
@PageSize int = 10, -- 页尺寸
@PageIndex int = 1, -- 页码
@doCount bit = 0, -- 返回记录总数, 非 0 值则返回
@OrderType bit = 0, -- 设 ......

sql中获得部分时间的方法

很多时候,我们可能希望按月、按天、按年做一些数据统计,但是,我们实际保存的数据可能是一个很精确的发生时间,可能是到秒。如何根据一个时间之截取其中的一部分就成了问题。
有两个解决方法:
最直接的想法利用DatePart或者Year、Month、Day函数
CAST(
    (
      STR( Y ......

sql中分割字符串

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER function [dbo].[Get_StrArrayStrOfIndex]
(
 @str varchar(1024),  --要分割的字符串
 @split varchar(10),  --分隔符号
 @index int --取第几个元素
)
returns varchar(1024)
as
begin
 declare @location int
 de ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号