【发布时间】:2018-03-13 14:46:35
【问题描述】:
我有一个包含 10 列的表。我需要的是通过 while 循环选择每一列(选择每一列名称而不是每一列值)并查找其名称是否以“框”结尾,如果是,则添加该列变量的值。
例如:
while(column_name(1) = like'%box')
begin
select @value = column_name from table
select column_name = column_name + 1 (i.e select next column name from table)
end
【问题讨论】:
-
查询
sys.columns或INFORMATION_SCHEMA.COLUMNS获取列名 -
是的。我很惊讶我找不到关于 SO 的好的解释。这里有一些类似的东西(它比你需要的更多)stackoverflow.com/questions/20463365/…
-
我试过这个兄弟,但无法按照我的方式改变它。 @Nick.McDermaid
-
如果您有多个列包含相同“类型”的数据,因此您想统一查询所有列,这通常是数据模型损坏的标志。
标签: sql sql-server