首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >patindex()函数问题

patindex()函数问题
EN

Stack Overflow用户
提问于 2011-03-01 17:08:31
回答 4查看 1.5K关注 0票数 0

我创建了下表

代码语言:javascript
复制
create table publisher(
  name varchar(20), 
  city varchar(20)
)

我想运行以下要求:

列出所有的职位的字符'a‘的名字。

为此,Ii运行以下查询:

代码语言:javascript
复制
select patindex('%a%', name)
  from publisher;

但是,它没有显示出适当的输出。当我把'city‘列而不是'name’列放在‘name’列时,它显示了正确的输出。有什么问题吗?

此外,我想显示出版商的名称,其获得最低和最大的利润。为此,我运行了以下查询:

代码语言:javascript
复制
select name, max(profit), min(profit) 
  from publisher;

它显示了"'name‘不是聚合函数的一部分“这样的错误。我应该做些什么来检索那些获得最低和最大利润的出版商的名字。

EN

回答 4

Stack Overflow用户

发布于 2011-03-01 17:51:19

列出所有的职位的字符'a‘的名字。

要做到这一点,您需要一个数字或计数表。如果使用的是Server 2005或更高版本,则可以使用公共表表达式对其进行模拟:

代码语言:javascript
复制
With Numbers As
    (
    Select 1 As Value
    Union All
    Select Value + 1
    From Numbers
    Where Value <= 100 --replace with max size of Publisher Name
    )
Select P.Name, N.Value
From Numbers As N
    Cross Join Publishers As P
Where Substring( P.Name, N.Value, 1 ) = 'a'
Option ( Maxrecursion 0);

此外,我想显示出版商的名称,其获得最低和最大的利润。

代码语言:javascript
复制
With ProfitRanks As
    (
    Select Name
        , Rank() Over ( Order By Profit Asc ) As LowestProfitRnk
        , Rank() Over ( Order By Profit Desc ) As HighestProfitRnk
    From Publisher
    )
Select Name, Profit
From ProfitRanks
Where LowestProfitRnk = 1
    Or HighestProfitRnk = 1
票数 1
EN

Stack Overflow用户

发布于 2011-03-01 17:39:17

第二个问题需要由以下几个方面组成:

按名称从发行者组中选择名称、最大值(利润)、最小(利润)

票数 0
EN

Stack Overflow用户

发布于 2011-03-01 17:41:30

对于问题的第2部分,假设profit上有一个索引,我会使用。

代码语言:javascript
复制
select name,
       profit
FROM   (SELECT TOP(1) with ties name,
                                profit
        FROM   publisher
        ORDER  BY profit) mx
UNION
select name,
       profit
FROM   (SELECT TOP(1) with ties name,
                                profit
        FROM   publisher
        ORDER  BY profit DESC) mn  

这是可以满足的,两个指数寻求一个在开始和一个在指数的末尾。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5157793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档