我怎么能插入一行?

时间:2015-08-10 09:29:14

标签: sql oracle-sqldeveloper

如何让这段代码只插入第一个人,而不是全部,如何指定条件? 还有一个问题:我可以使这段代码更加优化吗?怎么样?

uname/

2 个答案:

答案 0 :(得分:2)

你可以在最后添加一个条件。

and rownum=1;

这样做。

您需要考虑许多因素才能进行优化。这link可能会有所帮助。

答案 1 :(得分:1)

在条件允许的情况下你可以rownum = 1。

下面给出了一些例子: 在第一个例子中,我们可以按数据排序,只使用rownum< = 1获得一条记录。它只能提供一条记录。

using Xunit;
using Xunit.Abstractions;
namespace xUnitTestOutput
{
    public class OutputTests
    {
        private readonly ITestOutputHelper _output;
        public OutputTests(ITestOutputHelper output)
        {
            _output = output;
        }
        [Fact]
        public void FirstOutputTest()
        {
            _output.WriteLine("This is output from the test!");
        }
    }
}

其他简单的例子:

SELECT * 
FROM 
    (SELECT *
     FROM audit_table ORDER BY activity_id DESC)
WHERE  rownum <= 1;
 SELECT *
    FROM audit_table
    WHERE ROWNUM <= 1;

在上面的示例中,我们使用ROW_NUMBER()通过其中一个coulmn来操作,并通过使用别名并在where子句中放置条件来仅获取一条记录。