假设我有一个表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