0
A
回答
3
我們不能那樣做。我們需要輸出所有列和它們各自的NVL()函數。我知道這似乎是一個很大的努力,但考慮如果您的任何列是DATE或其他「異國情調」的數據類型會發生什麼。
如果你有很多的列和你真的想省力你可以生成從數據字典中的條款:
select 'nvl('|| column_name || ', 0)'
from user_tab_columns
where table_name = 'STUDENT'
order by column_id;
Cut'n'paste結果集到一個編輯器。
一旦你開始在這條路線很容易變得更加複雜:
select case when column_id > 1 then ',' end ||
'nvl('|| column_name || ',' ||
case when data_type = 'DATE' then 'sysdate'
when data_type = 'VARCHAR2' then '''DEF'''
else '0' end ||
')'
from user_tab_columns
where table_name = 'STUDENT'
order by column_id;
0
大概是這樣的(如果你是11克),如果你打算寫一個PL/SQL,要不然只是dbms_output.put_line
變量l_query
,讓您的查詢和執行它 -
這會給你使用NVL
所有列查詢 -
SELECT 'SELECT '|| listagg ('nvl('||column_name, ',0),')
WITHIN GROUP (ORDER BY column_name) ||',0) FROM TABLE1'
FROM all_tab_columns
WHERE table_name='TABLE1';
這裏面PL實現/ SQL的
DECLARE
v_record table1%rowtype;
BEGIN
SELECT 'SELECT '|| listagg ('nvl('||column_name, ',0),')
WITHIN GROUP (ORDER BY column_name) ||',0) FROM TABLE1'
INTO l_query
FROM all_tab_columns
WHERE table_name='TABLE1';
l_query := l_query ||' WHERE rownum<=1000'; --add where clause if you want to
OPEN tab_cursor FOR l_query;
LOOP
FETCH tab_cursor INTO v_record;
EXIT WHEN tab_cursor%NOTFOUND;
END LOOP;
--Do something with v_record
END;
/
相關問題
- 1. 如何將行插入列中具有默認值的表中?
- 2. 如何將默認值更改爲SQL中表中的列?
- 3. 如何將默認值設置爲C#中的下拉列表?
- 4. 改變表添加列的默認值,並執行每行的默認值
- 5. 如何更改下拉列表中的默認空白默認值(更改後)
- 6. 下拉列表 - 默認值
- 7. 列表框默認值
- 8. 默認值選擇列表
- 9. 下拉列表默認值
- 10. XSLT下拉列表中的默認值
- 11. Realm中列表的默認值
- 12. 如何將默認值設置爲現有行,同時將具有默認值的新列添加到表
- 13. MySQL:將新列插入到其他表的默認值表中
- 14. 如何從表中的列中刪除默認值?
- 15. 如何將默認值設置爲下拉列表控件?
- 16. 如何將默認值設置爲列表視圖
- 17. 默認列值
- 18. 默認列值
- 19. 如何顯示的下拉列表中的默認值?
- 20. 如何將默認值設置爲Sqlite中的TEXT列?
- 21. 如何將默認值設置爲ormlite中的列?
- 22. 如何將默認值添加到已存在的列中?
- 23. 如何將列B的默認值設置爲posgresql中列A的值?
- 24. SQLAlchemy將一列的默認值設置爲另一列的默認值
- 25. 如何在參數列表中設置變量的默認值
- 26. 默認值下拉列表中
- 27. 如何設置列的默認值?
- 28. 如何將@@ system_time_zone定義爲MySQL中現有表的列的默認值?
- 29. 如何在MVC中選擇列表中設置默認值?
- 30. 如何在表創建時將默認的contraint值作爲列值插入?
可以指定你的問題嗎?你想選擇空值還是插入? – Tatiana
like [this](http://stackoverflow.com/questions/26064254/select-all-columns-except-null-or-nvl-all-null)? – SomeJavaGuy
爲什麼你會在所有列中放置空值? – brenners1302