
Ayuda con sentencia TOP con sqlsrv
Publicado por Cesar Eduardo (10 intervenciones) el 02/02/2017 02:42:30
Hola buena noche, quiero ver si me pueden ayudar con problema que tengo, apenas me estoy empapando de programar en php y tengo una duda con el siguiente codigo me podrian ayudar por favor. Pongo el codigo y les explico que necesito y que es lo hace el codigo original.
el la consulta remarcada con negro esa es la que yo cambio por esta otra
$sql = "SELECT TOP 1 * FROM tExpedientes WHERE IdTipo =1 ORDER BY fecha DESC";
el primer codigo me manda los datos de la tabla pero del 2016 el primer registro y yo necesito los del 2017 ya que necesito todos los registros, entonces lo que hago es ordenarlos por fecha y en la consulta de sql si me da el resultado que necesito, pero en la pagina no me manda ningun resultado no se que este haciendo mal, podrian ayudarme un poco por favor.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$serverName = 'localhost';
$connectionInfo = array( "Database"=>"nombre", "UID"=>"user", "PWD"=>"passwd");
/* Connect using Windows Authentication. */
try
{
$conn = sqlsrv_connect($serverName, $connectionInfo);
//echo 'Conectado';
}
catch(Exception $e)
{
die( print_r( $e->getMessage() ) );
}
// Hacer una consulta simple, seleccionar la versión de
// SQLsrv y mostrarla.
//print_r($array);
$sql = "SELECT * FROM tExpedientes WHERE IdTipo =1 ORDER BY folio DESC";
$version = sqlsrv_query($conn, $sql);
if ($version === false){
die( print_r( sqlsrv_errors(), true) );
}
$array = array();
while($row = sqlsrv_fetch_array($version)) {
array_push($array,$row['IdExpediente']);
}
//print_r($array);
//var_dump($array);
if( empty( $array )){
echo "1";
}
else{
if($valor=array_search($_GET['folio'],$array)!=0){
$valor=array_search($_GET['folio'],$array)+1;
echo "$valor";
}
}
el la consulta remarcada con negro esa es la que yo cambio por esta otra
$sql = "SELECT TOP 1 * FROM tExpedientes WHERE IdTipo =1 ORDER BY fecha DESC";
el primer codigo me manda los datos de la tabla pero del 2016 el primer registro y yo necesito los del 2017 ya que necesito todos los registros, entonces lo que hago es ordenarlos por fecha y en la consulta de sql si me da el resultado que necesito, pero en la pagina no me manda ningun resultado no se que este haciendo mal, podrian ayudarme un poco por favor.
Valora esta pregunta


0