我正在使用 AJAX 制作一个 Web 应用程序,它将数据发送到另一个页面,该页面对其进行处理以对数据库进行查询,通常返回 100 条记录,并且从发送请求到响应的大致时间是一分钟,我知道我等了很长时间,既然他们要求我不要花太长时间,我该怎么做才能更快地响应?
AJAX 请求
$(document).ready(function () {
$("#btnEnviar").click(function() {
var datos ={fechaTae : $("#fechaTae").val()};
$.ajax({
type: "POST",
url: "buscaTae.asp",
data: datos,
success: function(resultado) {
document.getElementById("muestraTae").innerHTML = resultado;
}
});
});
});
SQL查询
SELECT a.id, a.tramite, a.movimiento, a.monto, a.fecha, a.cliente as cliente,
a.nombre, a.operativa, a.poliza, a.pedido, a.rechazo, a.observaciones,
a.usercreate,a.datecreate,a.userupdate, a.dateupdate, a.comentario, a.tipo,
a.presencial, a.Inactivo, a.useroracle, a.emergente, a.vip, b.id AS id2,
b.id_sol, b.tipo as tipoo, b.numero as numero, b.monto AS monto, b.aplicar,
b.datecreate,c.folio as telcel,c.datecreate as envio
FROM Sol_deposito_v2 a, Solicitud_lineas b,folios_tae_v2 c
WHERE a.id = b.id_sol and ((LEN(numero)='10' and substring(numero,1,3)
<> '722') or (LEN(numero)<='5' and a.operativa <> '142')) and
b.id=c.id_solicitud and convert(varchar,c.datecreate,103)='"&fecha&"'
order by c.datecreate
首先你应该稍微修正一下sql查询,int应该和int进行比较,否则sql会为每个操作进行内部转换才能进行比较,并且需要时间。另一方面,我更喜欢使用 Joins 来使代码更具可读性。最后,为了让 Sql 不会浪费时间评估连接的顺序,我们将添加 OPTION(FORCE ORDER)。当然,这将加快时代的步伐。