假設我有一個表abc
,列p_id
,u_id
和comments
。我只想在某個特定的p_id
值有多行時(表格中有一行「垃圾」數據,我想忽略每個p_id
),才從該表中獲取數據。我怎樣才能構建我的查詢,以便我可以確定是否有多行記錄p_id
而不從光標獲取數據。僅在結果中存在多行時提取數據
目前,我的代碼看起來是這樣的
Declare
Cursor pqr is
Select p_id,u_id,comments from abc where p_id=123;
Begin
--I want to ignore the results if this query returns 0 or 1 row.
--I only want to process the data if this query returns multiple rows
End;
我的業務需求是,我需要從表中取記錄,如果該表記錄數超過一個,我需要打印所有爲什麼我試圖避免光標獲取record.Thats和在最後找到行數......並且這個光標在一個腳本中爲n個公司運行,因爲這是一次性腳本,這就是爲什麼我不擔心它的性能 – 2012-01-18 18:17:54
您的分析功能給出了正確的結果,Can我們使用ROW_NUMBER()和ROW_NUMBER()desc命令,因此從第一個記錄中我可以知道有多少記錄 – 2012-01-18 18:22:58
@ user1138658 - 如果查詢只返回1行,會發生什麼?你什麼都不做?如果查詢返回0行會發生什麼? – 2012-01-18 18:23:21