Uzavřeno. Tato otázka je mimo téma . Momentálně nepřijímá odpovědi.

Odpověď

Chyba odkazuje na „id“ v prvním řádku vašeho dotazu. SQL Server neví, zda máte na mysli tbldata.id nebo tblimg.id.

Je dobrým zvykem vždy používat alias, aby změny schématu tabulky méně pravděpodobně narušily váš dotaz:

SELECT TOP 6 td.id FROM dbo.tbldata td RIGHT JOIN tblimg ti ON td.id = ti.newsid ORDER BY createdDate DESC 

Komentáře

  • Kromě aliasingu sloupců je dalším doporučeným postupem kromě pojmenování sloupců i název sloupce s deskriptorem třída, například CustomerID místo pouze ID.
  • ^ co řekl Dan, x1000. Měli byste být schopen rozpoznat identifikátor sloupce jako ID jako to, co představuje, bez ohledu na to, kde jej ve schématu nebo v dotazu najdete. Někteří by to argumentovali ' je nadbytečný ve své vlastní tabulce, ale ' zřídka se snažíte zjistit, co to je, když ' jen hledáte u stolu izolovaně. Konzistence je důležitější než vyhnout se nadbytečnosti IMHO.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *