Este é um código de amostra para selecionar todos os registros de uma tabela. Alguém pode me mostrar como selecionar o último registro dessa tabela?
select * from table
Quando uso: SELECT * FROM TABLE ORDER BY ID DESC LIMIT
Recebo este erro: Linha 1: sintaxe incorreta perto de 'LIMIT'. Este é o código que eu uso:
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
sql-server
sql-server-2008
Tassisto
fonte
fonte
Respostas:
Sem mais informações, qual banco de dados, etc, o melhor que podemos fazer é algo como
Servidor SQL
MySql
fonte
LIMIT
palavra-chave é uma extensão do SQL que apenas alguns RDBMSs implementam; notavelmente, Oracle não tem umaLIMIT
palavraSupondo que você tenha uma coluna de ID:
Além disso, isso funcionará no SQL Server. Eu acho que o MySQL você pode precisar usar:
Mas não tenho 100% de certeza sobre isso.
EDITAR
Olhando para as outras respostas, agora estou 100% confiante de que estou correto com a instrução MySQL: o)
EDITAR
Acabei de ver seu último comentário. Você poderia fazer:
Isso fornecerá o número de identificação mais alto.
fonte
para obter a última linha de um banco de dados SQL, use esta string sql:
Resultado:
Última linha do seu db!
fonte
Sim, este é o mysql, SQL Server:
fonte
fonte
O último é apenas o primeiro quando você inverte seu pedido.
fonte
No Oracle, você pode fazer:
Essa é uma das maneiras possíveis.
fonte
fonte
É sempre uma boa prática no design de sua tabela ter um identificador de linha automático, como
, então você pode identificar sua última linha
fonte
Eu acho que isso deve fazer.
fonte
Se você tiver um campo autoincrementável (por exemplo
ID
), poderá fazer algo como:SELECT * FROM foo WHERE ID = (SELECT max(ID) FROM foo)
fonte
fonte
INSERT
um novo valor está relacionado a "como selecionar o último registro dessa tabela"?Você também pode fazer algo assim:
SELECT LAST (column_name) AS LAST_CUSTOMER FROM table_name;
fonte
Eu votei em Ricardo. Na verdade, max é muito eficiente do que classificar. Veja as diferenças. é excelente.
Eu tive que obter o último registro de linha / atualização (timeStamp)
fonte