我試着寫與LEFT下面插入選擇查詢的JOIN使用Oracle數據庫:插入選擇在ORACLE
insert into tables (TABLE_NAME,DATA_LENGTH,NUM_ROWS)
SELECT user_tables.TABLE_NAME
,SUM(ALL_TAB_COLUMNS.DATA_LENGTH)
,user_tables.NUM_ROWS
FROM user_tables
LEFT JOIN ALL_TAB_COLUMNS
ON user_tables.TABLE_NAME = ALL_TAB_COLUMNS.TABLE_NAME
WHERE OWNER= 'SYSTEM'
AND (user_tables.TABLE_NAME ='TIMELEVEL'
OR user_tables.TABLE_NAME ='CHANLEVEL'
OR user_tables.TABLE_NAME = 'CUSTLEVEL'
OR user_tables.TABLE_NAME = 'PRODLEVEL'
OR user_tables.TABLE_NAME = 'ACTVARS')
GROUP BY user_tables.TABLE_NAME ;
這給了下面的錯誤:
ORA-00904 : "NUM_ROWS" : invalid identifier
一個表的DDL是:
CREATE TABLE tables (name_tables VARCHAR2(60)
,tuple VARCHAR2(50),
taille_tuple VARCHAR2(50))
Oracle數據庫或MySQL之間有什麼區別?你有它標記兩個 – chiliNUT
你的表創建語句顯示它沒有一個名爲'num_rows'的列。或者你的'insert'中的其他列名稱。你剛剛誤解了插入語法嗎? –
剛剛有一個DOH時刻 – GurV