【问题标题】:Intersystems Cache: Querying a table that has a column with data type of another table系统间缓存:查询具有另一表数据类型的列的表
【发布时间】:2014-06-25 17:25:57
【问题描述】:

我需要使用什么表示法从表类型的字段(基本上是字段内的嵌入表)中提取特定/所有行和字段信息?

【问题讨论】:

  • 听起来您应该使用联接,但我不清楚这是否是您想要的。听起来您的类 Package.A 具有 Package.C 类型的属性 B,并且您希望在查询 A 时查询包含 C 的所有字段。正确吗?
  • 理论上连接是理想的,不幸的是,该列不是数据类型 int 或 varchar,例如,可用于连接以链接到另一个表。它是表类型(数据库中的另一个表),这意味着该字段基本上存储了另一个表的行的 %collection。
  • 你能发布这个列(类属性)的定义吗?

标签: intersystems-cache intersystems


【解决方案1】:

您可以使用 -> 表示法。 例如,您的表名是“Sample.Person”,而“zipcode”是该表中指向“Sample.Zipcodes”的列

示例查询:

SELECT *,zipcode->name,zipcode->number FROM Sample.Person
SELECT * FROM Sample.Person where zipcode->name = 'foo bar'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-17
    • 2011-09-22
    • 2022-10-31
    • 1970-01-01
    • 1970-01-01
    • 2011-11-04
    • 2020-04-07
    相关资源
    最近更新 更多