如何写一个sql语句,让其查询结果按汉字的首字母排序?

解决方案 »

  1.   

    select * from tab by ascding ??
    我也记得不太清楚了,大概就是这个意思:)
      

  2.   

    select * from tab by 字段名 asc
      

  3.   

    建数据库的时候需要将字、拼音等如:天-t-ti-tia-tian
    再进行模糊查询!!where 条件1 or 条件2 or 条件3...
      

  4.   

    一个取得首字拼单的函数,我已调试通过
    Public Function GetPY(a1 As String) As String
        '获得输入名称的首字拼音
        Dim t1 As String
        If Asc(a1) < 0 Then
        t1 = Left(a1, 1)
        If Asc(t1) < Asc("啊") Then
        GetPY = "0"
        Exit Function
        End If
        If Asc(t1) >= Asc("啊") And Asc(t1) < Asc("芭") Then
        GetPY = "A"
        Exit Function
        End If
        If Asc(t1) >= Asc("芭") And Asc(t1) < Asc("擦") Then
        GetPY = "B"
        Exit Function
        End If
        If Asc(t1) >= Asc("擦") And Asc(t1) < Asc("搭") Then
        GetPY = "C"
        Exit Function
        End If
        If Asc(t1) >= Asc("搭") And Asc(t1) < Asc("蛾") Then
        GetPY = "D"
        Exit Function
        End If
        If Asc(t1) >= Asc("蛾") And Asc(t1) < Asc("发") Then
        GetPY = "E"
        Exit Function
        End If
        If Asc(t1) >= Asc("发") And Asc(t1) < Asc("噶") Then
        GetPY = "F"
        Exit Function
        End If
        If Asc(t1) >= Asc("噶") And Asc(t1) < Asc("哈") Then
        GetPY = "G"
        Exit Function
        End If
        If Asc(t1) >= Asc("哈") And Asc(t1) < Asc("击") Then
        GetPY = "H"
        Exit Function
        End If
        If Asc(t1) >= Asc("击") And Asc(t1) < Asc("喀") Then
        GetPY = "J"
        Exit Function
        End If
        If Asc(t1) >= Asc("喀") And Asc(t1) < Asc("垃") Then
        GetPY = "K"
        Exit Function
        End If
        If Asc(t1) >= Asc("垃") And Asc(t1) < Asc("妈") Then
        GetPY = "L"
        Exit Function
        End If
        If Asc(t1) >= Asc("妈") And Asc(t1) < Asc("拿") Then
        GetPY = "M"
        Exit Function
        End If
        If Asc(t1) >= Asc("拿") And Asc(t1) < Asc("哦") Then
        GetPY = "N"
        Exit Function
        End If
        If Asc(t1) >= Asc("哦") And Asc(t1) < Asc("啪") Then
        GetPY = "O"
        Exit Function
        End If
        If Asc(t1) >= Asc("啪") And Asc(t1) < Asc("期") Then
        GetPY = "P"
        Exit Function
        End If
        If Asc(t1) >= Asc("期") And Asc(t1) < Asc("然") Then
        GetPY = "Q"
        Exit Function
        End If
        If Asc(t1) >= Asc("然") And Asc(t1) < Asc("撒") Then
        GetPY = "R"
        Exit Function
        End If
        If Asc(t1) >= Asc("撒") And Asc(t1) < Asc("塌") Then
        GetPY = "S"
        Exit Function
        End If
        If Asc(t1) >= Asc("塌") And Asc(t1) < Asc("挖") Then
        GetPY = "T"
        Exit Function
        End If
        If Asc(t1) >= Asc("挖") And Asc(t1) < Asc("昔") Then
        GetPY = "W"
        Exit Function
        End If
        If Asc(t1) >= Asc("昔") And Asc(t1) < Asc("压") Then
        GetPY = "X"
        Exit Function
        End If
        If Asc(t1) >= Asc("压") And Asc(t1) < Asc("匝") Then
        GetPY = "Y"
        Exit Function
        End If
        If Asc(t1) >= Asc("匝") Then
        GetPY = "Z"
        Exit Function
        End If
        Else
        If UCase(a1) <= "Z" And UCase(a1) >= "A" Then
        GetPY = UCase(Left(a1, 1))
        Else
        GetPY = "0"
        End If
        End If
    End Function
      

  5.   

    不知道,是不是我看错了,用ORDER BY 字段名 ASC
    字段名称为字符型就可以了!
      

  6.   

    select 字段名 from 表名
    order by left(字段名,2)
    排序的字段都 为汉字
    try it
      

  7.   

    问题已解决,在access中有设置排序标准的选项