我想从sqlserver中获取字母数字的最大值/最小值 [英] I want to fetch alphanumeric max/min value from sqlserver

查看:295
本文介绍了我想从sqlserver中获取字母数字的最大值/最小值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Protected Sub btnFirst_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnFirst.Click
      Dim i As Long = 0

      Dim str1 As String = "SELECT Min(IT_CODE_ACT) FROM PS_EXT_MAST "

      conn.Open()
      Dim cmd1 As SqlCommand = New SqlCommand(str1, conn)
      Dim dr As SqlDataReader = cmd1.ExecuteReader()

      dr.Read()
      If dr.HasRows Then
          txtItemCode.Text = dr(0).ToString()
          i = Convert.ToInt32(txtItemCode.Text)
      End If
      conn.Close()

      Dim str2 As String = "select IT_DESC from PS_EXT_MAST where IT_CODE_ACT= " + i
      conn.Open()
      Dim cmd2 As SqlCommand = New SqlCommand(str2, conn)
      Dim dr2 As SqlDataReader = cmd2.ExecuteReader()
      dr2.Read()

      If dr2.HasRows Then
          txtItemDesc.Text = dr2(0).ToString()

      End If
      conn.Close()

      Response.Write("<Script>alert(' First record found....')</Script>")
  End Sub

  Protected Sub btnLast_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnLast.Click
      Dim i As Long = 0

      Dim str1 As String = "SELECT Max(IT_CODE_ACT) FROM PS_EXT_MAST"
      conn.Open()
      Dim cmd1 As SqlCommand = New SqlCommand(str1, conn)
      Dim dr As SqlDataReader = cmd1.ExecuteReader()

      dr.Read()
      If dr.HasRows Then
          txtItemCode.Text = dr(0).ToString()
          i = Convert.ToInt32(txtItemCode.Text)
      End If
      conn.Close()

      Dim str2 As String = "select IT_DESC from PS_EXT_MAST where IT_CODE_ACT=" + i
      conn.Open()
      Dim cmd2 As SqlCommand = New SqlCommand(str2, conn)
      Dim dr2 As SqlDataReader = cmd2.ExecuteReader()
      dr2.Read()
      If dr2.HasRows Then
          txtItemDesc.Text = dr2(0).ToString()
      End If
      conn.Close()

      Response.Write("<Script>alert(' Last record found....')</Script>")
  End Sub




***我想从sqlserver中获取字母数字的最大值/最小值




***I want to fetch alphanumeric max/min value from sqlserver
error is occured, what will be my query?

推荐答案

您首先需要定义最小/最大字母数字值,因为对于数字来说这是清楚的,但对于字母数字而言值不是.如果按照A-z的方式表示最小/最大,则可以在该特定字段上排序,并获取集合中的第一条和最后一条记录.

旁注:像这样使用sql进行编码的方式存在安全隐患,等待发生.至少看看sql参数.

祝您好运!
You would first need to define what a min/max alphanumeric value is because for numbers this is clear but for alphanumeric values it isn''t. If you mean min/max as in A-z, you could sort on that specific field and take the first and last record in the set.

Sidenote: The way you code using sql like this is a security hazard waiting to happen. At least have a look at sql parameters.

Good luck!


为此,您可以像使用
那样使用按升序和降序排序的Aggregate函数排序 从表1中选择名称,顺序为(名称)十进制/升序.
希望对您有帮助
For this you can use order by Aggregate function with Ascending and descending like
select name from table1 order by(name) decs / Asc.
i hope this give some help you


这篇关于我想从sqlserver中获取字母数字的最大值/最小值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆