我想查询多个表中的column_name = object_no(最多100个表)。我正在使用Oracle SQL Developer。
要显示没有column_name = object_no的表,我尝试使用下面的SQL查询。
QMAKE_CFLAGS -= -O2
但是,它会多次显示同一个表格,并与同时包含componentDidMount
答案 0 :(得分:1)
由于user_tab_columns
在每行中都有table_name
和column_name
,因此您的选择仅省略包含该列的行,而不包含该表中其他列的其他行。
您可以使用的一个查询是:
SELECT DISTINCT table_name
FROM user_tab_columns c
WHERE NOT EXISTS (
SELECT 1
FROM user_tab_columns
WHERE column_name LIKE '%OBJECT_NO%'
AND table_name = c.table_name
)
ORDER BY table_name;
其他方式可行:
SELECT DISTINCT table_name
FROM user_tab_columns
WHERE table_name NOT IN (
SELECT table_name
FROM user_tab_columns
WHERE column_name LIKE '%OBJECT_NO%'
)
ORDER BY table_name;
答案 1 :(得分:1)
试试这个:
SELECT
DISTINCT TABLE_NAME
FROM
USER_TAB_COLUMNS
WHERE
TABLE_NAME NOT IN
(
SELECT
TABLE_NAME
FROM
USER_TAB_COLUMNS
WHERE COLUMN_NAME LIKE '%OBJECT_NO%'
)
答案 2 :(得分:0)
试试这个 -
SET SERVEROUT ON;
BEGIN
FOR R IN (SELECT 'SELECT '||A.COLUMN_NAME||' FROM '||A.TABLE_NAME||' ' AS QRY FROM USER_TAB_COLUMNS A
WHERE COLUMN_NAME = 'OBJECT_NO')
LOOP
EXECUTE IMMEDIATE USING R.QRY;
END LOOP;
/