2017-04-24 60 views
0

我想根据列名从表中提取,列名必须满足一定的条件。如何根据列名的属性进行选择?

这里是我想要做的伪代码:

SELECT <COLUMNS> 
FROM <TABLE> 
WHERE SUBSTR(<COLUMNS>, 1, 3) IN ('ADC','ERT', 'RTY') 

是有办法,我可以做到这一点?

+0

动态SQL - 建立你的陈述在一个循环,并执行动态 – Randy

+0

你要通过PL/SQL来做到这一点。您将通过table_name查询all_tab_columns以获取所需的列。然后,使用结果根据该表动态构建所需的SQL查询。这很常见。你为什么不刺伤它? – unleashed

回答

0

你可以试试这个,但记住我认为这适用于Oracle数据库。

从ALL_TAB_COLUMNS中选择COLUMN_NAME,其中TABLE_NAME ='YOUR_TABLE_NAME'和substr(column_name,1,4)in('LAST','FIRS','EXAM');

感谢

+0

thanx为答案,通过我的问题涉及到数据bot的列名,我想使用列名的属性从这些列中提取数据。 –