Sql Cx_Oracle-如何指定具有双顺序输出的查询
我正在处理一个Cx_Oracle 11g数据库:我想知道是否有可能在一个表的输出中有两种不同类型的Sql Cx_Oracle-如何指定具有双顺序输出的查询,sql,oracle,sql-order-by,Sql,Oracle,Sql Order By,我正在处理一个Cx_Oracle 11g数据库:我想知道是否有可能在一个表的输出中有两种不同类型的order by。我的意思是,假设列是name,timestamp和value,我需要输出如下所示: nameA - timestamp1 - value nameA - timestamp2 - value nameA - timestamp3 - value nameB - timestamp1 - value nameB - timestamp2 - value nameB - timesta
order by
。我的意思是,假设列是name
,timestamp
和value
,我需要输出如下所示:
nameA - timestamp1 - value
nameA - timestamp2 - value
nameA - timestamp3 - value
nameB - timestamp1 - value
nameB - timestamp2 - value
nameB - timestamp3 - value
其中,主要顺序是按名称
,而时间戳
是按每个不同的名称
排序的。我该怎么办
可以在order_by_子句中指定多个表达式。Oracle数据库首先根据第一个表达式的值对行进行排序。然后,第一个表达式具有相同值的行将根据第二个表达式的值进行排序,依此类推
因此,在您的情况下,只需执行以下操作:
order by name, timestamp
在您的查询中,将执行您描述的操作。:
可以在order_by_子句中指定多个表达式。Oracle数据库首先根据第一个表达式的值对行进行排序。然后,第一个表达式具有相同值的行将根据第二个表达式的值进行排序,依此类推
因此,在您的情况下,只需执行以下操作:
order by name, timestamp
在您的查询中将执行您描述的操作。按名称排序、按时间戳排序在Cx\U Oracle中不起作用吗?你犯了什么错误?@AlexPoole是的,它起作用了。我不知道,谢谢。列名在子句中出现的顺序是否决定了查询的工作方式?它将按
名称
排序,然后按时间戳
排序,这就是您想要的。列在列表中出现的顺序确实很重要,是的。orderbyname,timestamp
在Cx\U Oracle中不起作用吗?你犯了什么错误?@AlexPoole是的,它起作用了。我不知道,谢谢。列名在子句中出现的顺序是否决定了查询的工作方式?它将按名称
排序,然后按时间戳
排序,这就是您想要的。列在列表中的显示顺序确实很重要,是的。