To jest przykładowy kod służący do wybierania wszystkich rekordów z tabeli. Czy ktoś może mi pokazać, jak wybrać ostatni rekord tej tabeli?
select * from table
Kiedy używam: SELECT * FROM TABLE ORDER BY ID DESC LIMIT
pojawia się ten błąd: Wiersz 1: Niepoprawna składnia w pobliżu „LIMIT”. Oto kod, którego używam:
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
źródło
źródło
Odpowiedzi:
Bez dalszych informacji, która baza danych itp. Najlepiej możemy zrobić
Sql Server
MySql
źródło
LIMIT
kluczowe jest rozszerzeniem SQL, że tylko niektóre RDBMS typu wdrożenia; w szczególności Oracle nie maLIMIT
słowa kluczowegoZakładając, że masz kolumnę Id:
Będzie to również działać na SQL Server. Myślę, że MySQL możesz potrzebować:
Ale nie jestem tego w 100% pewien.
EDYTOWAĆ
Patrząc na inne odpowiedzi, jestem teraz w 100% pewien, że zgadzam się z instrukcją MySQL: o)
EDYTOWAĆ
Właśnie zobaczyłem Twój najnowszy komentarz. Mógłbyś:
W ten sposób otrzymasz najwyższy numer identyfikacyjny.
źródło
aby uzyskać ostatniego wiersza o SQL Database wykorzystywać ten ciąg sql:
Wynik:
Ostatnia linia twojego db!
źródło
Tak, to mysql, SQL Server:
źródło
źródło
Ostatni jest tylko pierwszym, gdy odwrócisz zamówienie.
źródło
W Oracle możesz:
To jeden z możliwych sposobów.
źródło
źródło
Przy projektowaniu tabeli zawsze dobrze jest mieć automatyczny identyfikator wiersza, taki jak
, możesz zidentyfikować ostatni wiersz według
źródło
Myślę, że to powinno wystarczyć.
źródło
Jeśli masz pole samo-zwiększające się (powiedzmy
ID
), możesz zrobić coś takiego:SELECT * FROM foo WHERE ID = (SELECT max(ID) FROM foo)
źródło
źródło
INSERT
nowa wartość ma się do „jak wybrać ostatni rekord z tej tabeli”?Możesz też zrobić coś takiego:
SELECT LAST (column_name) AS LAST_CUSTOMER FROM table_name;
źródło
Głosowałem za Ricardo. Właściwie max jest dużo wydajniejszy niż sortowanie. Zobacz różnice. to jest świetne.
Musiałem pobrać ostatni wiersz / rekord aktualizacji (znacznik czasu)
źródło