如何selectSQL中最后一个表的logging?
这是从表中select所有logging的示例代码。 有人可以告诉我如何select该表的最后一个logging?
select * from table
当我使用: SELECT * FROM TABLE ORDER BY ID DESC LIMIT
我得到这个错误:第1行:语法附近'LIMIT'不正确。 这是我使用的代码:
private void LastRecord() { SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["HELPDESK_OUTLOOKConnectionString3"].ToString()); conn.Open(); SqlDataReader myReader = null; SqlCommand myCommand = new SqlCommand("SELECT * FROM HD_AANVRAGEN ORDER BY " + "aanvraag_id DESC LIMIT 1", conn); myReader = myCommand.ExecuteReader(); while (myReader.Read()) { TextBox1.Text = (myReader["aanvraag_id"].ToString()); TextBox1.Text += (myReader["wijziging_nummer"].ToString()); TextBox1.Text += (myReader["melding_id"].ToString()); TextBox1.Text += (myReader["aanvraag_titel"].ToString()); TextBox1.Text += (myReader["aanvraag_omschrijving"].ToString()); TextBox1.Text += (myReader["doorlooptijd_id"].ToString()); TextBox1.Text += (myReader["rapporteren"].ToString()); TextBox1.Text += (myReader["werknemer_id"].ToString()); TextBox1.Text += (myReader["outlook_id"].ToString()); } }
没有任何进一步的信息,哪个数据库等最好的,我们可以做的就像
Sql Server
SELECT TOP 1 * FROM Table ORDER BY ID DESC
MySQL的
SELECT * FROM Table ORDER BY ID DESC LIMIT 1
假设你有一个Id列:
SELECT TOP 1 * FROM table ORDER BY Id DESC;
此外,这将在SQL Server上工作。 我认为你可能需要使用MySQL:
SELECT * FROM table ORDER BY Id DESC LIMIT 1
但是,我不是100%确定的。
编辑
看着其他答案,我现在100%确信我对MySQL声明是正确的:o)
编辑
刚刚看到你的最新评论。 你可以这样做:
SELECT MAX(Id) FROM table
这会得到最高的Id号码。
SELECT * FROM TABLE ORDER BY ID DESC LIMIT 1
是的,这是MySQL,SQL Server:
SELECT TOP 1 * FROM Table ORDER BY ID DESC
SELECT * FROM table ORDER BY Id DESC LIMIT 1
最后一个是你逆序排列的第一个。
获取SQL数据库的最后一行使用这个SQLstring:
SELECT * FROM TableName WHERE id=(SELECT max(id) FROM TableName);
输出:
数据库的最后一行!
在Oracle中,你可以这样做:
SELECT * FROM (SELECT EMP.*,ROWNUM FROM EMP ORDER BY ROWNUM DESC) WHERE ROWNUM=1;
这是可能的方法之一。