【问题标题】:Sql Server upper lower and index logicSql Server 上下和索引逻辑
【发布时间】:2012-07-21 09:36:32
【问题描述】:

我在 sql 中有 FirstName 和 LastName 列。 我想让名字的第一个字母大而其余的小 相同姓氏的第一个字母大而低 例如:我们有 FisrtName,LastName 是 john sinatra 的名字 我的一定是约翰·辛纳屈。 T-SQL代码应该如何?

【问题讨论】:

    标签: sql sql-server uppercase lowercase


    【解决方案1】:

    试试这个:

    SELECT
        UPPER(LEFT(FirstName, 1)) + LOWER(RIGHT(FirstName, LEN(FirstName) - 1)) AS FirstName,
        UPPER(LEFT(LastName, 1)) + LOWER(RIGHT(LastName, LEN(LastName) - 1)) AS LastName
    FROM MyTable
    

    【讨论】:

    • 谢谢drumboog,它解决了我的问题……但我很好奇我需要索引逻辑吗?
    • 您不需要索引来选择数据...仅当您尝试按名字/姓氏过滤时。在这种情况下,无需担心更改大小写,因为 SQL Server 不区分大小写。
    • 是的,你是对的。确定 sql server 是不区分大小写的。我也不明白你的意思(仅当你试图按名字/姓氏过滤时)这个。如果你告诉我会很感激。谢谢
    • 我认为选择列表中的任何内容都不需要索引。索引用于您要加入的字段或“where”子句中的字段。它们允许数据库更快地定位记录,但在操作选择列表中的数据时它们不会有用。
    • 你能说出这种情况的具体例子吗?如果我问更多对不起:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-24
    相关资源
    最近更新 更多