【问题标题】:SQLITE: Table names to select from as a subquerySQLITE:要从中选择的表名作为子查询
【发布时间】:2023-02-10 03:00:55
【问题描述】:

我试图一次从多个表中选择一列的不同值。我想合并的两个查询是:

  1. 选择所有合适的表:
    SELECT name
    FROM sqlite_schema 
    WHERE type='table' 
        AND name NOT LIKE 'sqlite_%';
    
    1. 从一个表中选择不同的值:
    SELECT DISTINCT CATEGORY FROM my_table;
    

    我想根据第一个查询的结果对每个表名运行最后一个查询。我很确定这应该是可能的,但还没有解决。

    我想象的是这样的:

    SELECT DISTINCT CATEGORY 
    FROM (
        SELECT name
        FROM sqlite_schema 
        WHERE type='table' 
            AND name NOT LIKE 'sqlite_%'
    );
    

    此组合查询会引发错误。

【问题讨论】:

    标签: sql sqlite


    【解决方案1】:

    不,这是不可能的。

    在大多数 RDBMS 中将需要动态 SQL 来执行此操作,但是 SQLite does not support dynamic SQL;您需要使用不同的产品来实现此功能,例如 MySql、SqlServer 等。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-02
      • 2021-07-23
      • 1970-01-01
      • 1970-01-01
      • 2011-04-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多