Hola a todos estoy realizando una consulta en SQL que me arroje los registros en cuyas fechas haga una comparación y me aparezcan los empleados de una tabla cuya antigüedad sea mayor a 25 años, tengo esta consulta pero me dice que la columna anyos no es valida:
Código SQL:
Ver original"SELECT rpe, nombre, YEAR(getdate())-YEAR(fe_antre) AS anyos FROM b_traba1 WHERE anyo>25"
Si la imprimo de esta manera si me da el valor que quiero de la columna "anyo":
Código SQL:
Ver original"SELECT YEAR(getdate())-YEAR(fe_antre) AS anyos FROM b_traba1"
pero al compararla no lo puedo hacer, en caso de que no la pueda comparar desde la consulta (quisiera y se pudiera), como lo haría para hacerlo con aspx.net??... Aquí les dejo mi código :p...
Código ASP:
Ver original<%@ Import Namespace="System.Data.SQLClient" %>
<script language="vbscript" runat="server">
Sub Page_Load(Sender As Object, E As EventArgs)
Dim conn As SqlConnection =
New SqlConnection("server=myhost;database=mydb;User ID=myID;Password=mypass;Trusted_Connection=no")
Dim sql As String =
"SELECT rpe, nombre, YEAR(getdate())-YEAR(fe_antre) AS anyos FROM b_traba1 WHERE anyo>25"
Dim dr As New SqlCommand(sql, conn)
Dim reader As SqlDataReader
Dim values As ArrayList = New ArrayList()
Dim values2 As ArrayList = New ArrayList()
conn.Open()
reader = dr.ExecuteReader()
While reader.Read()
values.Add(reader.Item("rpe").ToString())
values2.Add(reader.Item("nombre").ToString())
End While
lb.DataSource = values
lb.DataBind()
lb2.DataSource = values2
lb2.DataBind()
conn.Close()
reader.Close()
End Sub
</script>
<html>
<head>
<title>ListBox using SQLDataReader</title>
</head>
<body>
<asp:Label ID="Label1" runat="server" Text="RPE del Empleado"></asp:Label>
<form id="Form1" method="post" runat="server">
<asp:ListBox id="lb" SelectionMode="Multiple" runat="server" Height="643px"
Width="196px"/>
<asp:ListBox id="lb2" SelectionMode="Multiple" runat="server" Height="643px"
Width="196px"/>
</form>
</body>
</html>
De antemano gracias :)...