【问题标题】:MySQL select query [duplicate]MySQL选择查询[重复]
【发布时间】:2011-06-03 07:56:25
【问题描述】:

可能重复:
MySQL wildcard in select …

SELECT icon_* FROM images WHERE 1

我有三个字段,icon_smallicon_bigicon_large。如何在不手动指定的情况下获得所有三个?

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    据我所知,你不能。您必须手动指定它们。

    (查看副本)

    【讨论】:

      【解决方案2】:

      您必须在 SELECT 中指定它们,但您可以通过以下方式选择列列表(然后只能在 dynamic SQL 中使用):

      select column_name from information_schema.columns 
                         where table_schema = database()
                               and table_name = 'mytesttable' 
                               and column_name like 'icon_%'
      

      【讨论】:

        【解决方案3】:
        set @qry = (select concat('select ',group_concat(column_name), ' from ' ,table_name) from
        information_schema.columns
        where table_schema = database()
        and table_name = 'your_table_name'
        and column_name like 'icon_%');
        
        prepare stmt from @qry;
        execute stmt;
        deallocate prepare stmt;
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-04-03
          • 2012-11-25
          • 2013-03-16
          • 2013-08-29
          • 2018-01-04
          • 1970-01-01
          • 2021-04-02
          • 1970-01-01
          相关资源
          最近更新 更多