标签: sybase-ase

可以在Sybase ASE中使用具有"TOP 1列"的相关子查询吗?

我试图在Sybase ASE 12上使用建议的查询,它抱怨语法错误.

SELECT 
    item, 
    ( SELECT TOP 1 tags.tag
      FROM #tags tags
        LEFT JOIN t o
          ON  tags.tag = o.tag
          AND o.item_id = n.item_id 
      WHERE o.tag IS NULL
      ORDER BY tags.tag
    ) 'tag',
    value  
FROM
    t_new n
Run Code Online (Sandbox Code Playgroud)

错误: Incorrect syntax near the keyword 'top'.

但是,当我用MAX()替换(TOP 1 tag... ORDER BY tag)时,同样的查询有效:

SELECT 
    item, 
    ( SELECT max(tags.tag)
      FROM #tags tags
        LEFT JOIN t o
          ON  tags.tag = o.tag
          AND o.item_id = n.item_id 
      WHERE o.tag IS NULL …
Run Code Online (Sandbox Code Playgroud)

sql subquery sybase-ase correlated-subquery

5
推荐指数
1
解决办法
5011
查看次数

SQL min/max分组问题

我有类似以下数据结构:

Category    StartDateTime       EndDateTime
===============================================
1           12/1/2009 12:00     12/1/2009 12:12
1           12/1/2009 04:00     12/1/2009 04:20
2           12/2/2009 10:15     12/2/2009 10:22
2           12/2/2009 11:00     12/2/2009 11:01

我想要每个类别的最小StartDateTime和最大EndDateTime.像这样:

Category    MinStartDateTime    MaxEndDateTime
===============================================
1           12/1/2009 12:00     12/1/2009 04:20
2           12/2/2009 10:15     12/2/2009 11:01

使用按类别分组的最小值和最大值似乎不起作用:

select
    Category,
    min(StartDateTime) [MinStartDateTime],
    max(EndDateTime) [MaxDateTime]
from
    MyTable
group by
    Category
order by
    Category,
    StartDateTime,
    EndDateTime
Run Code Online (Sandbox Code Playgroud)

我还在每个min和max语句的子查询中尝试了两个内部联接,但它似乎排除了一些记录:

select distinct
    T1.Category,
    T1.StartDateTime [MinStartDateTime],
    T1.EndDateTime [MaxEndDateTime]

from
    MyTable T1

inner join
    (select
        Category,
        min(StartDateTime) [MinStartDateTime]
     from
        MyTable
     group by
        Category) T2 …
Run Code Online (Sandbox Code Playgroud)

sql sybase-ase

4
推荐指数
1
解决办法
8509
查看次数

Sybase ASE - 跟踪查询/进程

如果有任何Sybase ASE专家,我想知道是否有办法让Sybase跟踪它收到的所有查询.

我目前有一个程序运行,通常在启动后7小时后开始显示一些奇怪的行为.我想知道Sybase目前正在做什么,以便我可以解决这个问题.

我正在使用Sybase ASE 15.5.由于一些奇怪的原因,我的监控服务器无法启动.

sap trace rdbms sybase-ase

4
推荐指数
1
解决办法
1万
查看次数

显示隔离级别

是否可以显示Sybase Adaptive Server Enterprise 12.5.4中设置的当前隔离配置?

如果是这样,那我怎么显示它?

isolation-level sybase-ase

4
推荐指数
1
解决办法
2973
查看次数

如何在Sybase ASE上获取用户定义的数据类型列表?

我使用以下查询来获取用户定义的数据类型(UDDT)列表:

SELECT USER_NAME(S.uid) as owner, S.name as Name, T.name as datatypename, 
         OBJECT_NAME(S.domain), OBJECT_NAME(S.tdefault) 
FROM systypes S,systypes T 
WHERE S.type=T.type AND T.usertype<100 AND T.usertype NOT IN(18,24,25,80) AND S.usertype>100  
ORDER BY 1, 2
Run Code Online (Sandbox Code Playgroud)

在Sybase 12.5上,它用于返回每个UDDT返回一行.现在使用Sybase 15.x,它返回2行:

owner   Name    datatypename 
'dbo'  'auid'  'varchar'
'dbo'  'auid'  'longsysname'
Run Code Online (Sandbox Code Playgroud)

实际上是UDDT的数据类型varchar.我不确定它的longsysname来源.返回在12.5.x和15.x ASE数据库中都有效的UDDT列表的正确方法是什么?

sql user-defined-types sybase-ase

4
推荐指数
1
解决办法
5290
查看次数

如何从查询中获取主键的名称

我正在搜索一个查询,该查询告诉我表示例的主键的名称
:在oracle中,我这样做

从user_constraints中选择CONSTRAINT_NAME,其中table_name ='CT'AND CONSTRAINT_TYPE ='P'

如何在sybase中做到这一点?

sybase sybase-ase

4
推荐指数
1
解决办法
3730
查看次数

JZ0SJ:在此数据库中找不到元数据访问者信息

我的ColdFusion应用程序有问题.当我尝试登录我的帐户时,它会生成以下错误

JZ0SJ: Metadata accessor information was not found on this database.
Please install the required tables as mentioned in the jConnect documentation.
Run Code Online (Sandbox Code Playgroud)

我正在使用SQL Anywhere 9和jConnect-6_0.任何人都可以帮我这个.

coldfusion sybase sybase-ase coldfusion-9

4
推荐指数
1
解决办法
4941
查看次数

sybase 15.7浮点数到数字舍入错误

任何人都可以解释以下内容,这对我来说只是一个bug:

select convert(numeric(8,4), convert(float, '12.4155499999999996418864611769'))

12.4156
Run Code Online (Sandbox Code Playgroud)

当然答案应该是12.4155.为了仔细检查,我创建了一个表MyTab,其中包含一个sybase"float"列,并插入了"12.4155499999999996418864611769".然后使用转换转储十六进制并得到0x4028D4C2F837B4A2.这确实是我插入的字符串的IEEE 754双精度表示.然后,如果我(如上所述)将其转换为数字(8,4),则给出12.4156.

我认为这是错误的,还是我生气了?

floating-point sybase-ase

4
推荐指数
1
解决办法
4813
查看次数

Sybase替换功能

我无法使用sybase replace函数替换数据。基本上,我需要更新所有出现的内容,'abc'并用'zzz'。]进行更改。 table_clmn 我是使用以下sql的数据类型文本-

update  table
set table_clmn = replace(table_clmn , 'abc', 'zzz') WHere id in (1, 2)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

关键字“替换”附近的语法不正确。

sybase sybase-ase

4
推荐指数
1
解决办法
7324
查看次数

如何从.net核心连接到Sybase数据库

我试图从.net核心连接到Sybase数据库,但我找不到任何好的库.有人可以建议库连接到Sybase吗?

sybase sybase-ase .net-core asp.net-core

4
推荐指数
2
解决办法
4201
查看次数