【问题标题】:How can I select sqlite "check ... in [list]" options in SQLite?如何在 SQLite 中选择 sqlite "check ... in [list]" 选项?
【发布时间】:2021-01-25 08:46:06
【问题描述】:

几乎所有内容都在标题中。 我正在寻找与以下 SQL 命令等效的 SQLite:

show columns from users where field = "category";

鉴于 SQLite 中不存在 show 语句。 提前致谢

【问题讨论】:

    标签: sql sqlite


    【解决方案1】:

    您可以将 SQLite 中保存的元数据用于查询:

    select
      sm.name as table_name,
      pti.name as column_name
    from
      sqlite_master sm
    join
      pragma_table_info(sm.name) as pti
    where
      pti.name like '%category%';
    

    它返回(可以看出)带有列名的表。然后,您可以按列名过滤输出,例如条件:

    where pti.name like '%category%'
    

    只返回那些列名,包括category

    【讨论】:

    • 我返回这个:array:1 [▼ 0 => {#1142 ▼ +"table_name": "defis" +"column_name": "category" } ] 那只是列和表姓名。我想访问给定列的所有可能值 [检查 'category' in('foo', 'bar', ...) 数据结构]
    • 好吧,也许 sql 等效项是错误的。更好的版本:“按类别从defi组中选择类别”但是以某种方式返回所有可能的选项(来自枚举)
    猜你喜欢
    • 2023-03-08
    • 2022-01-14
    • 2011-01-02
    • 2021-03-25
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多