Zárt. Ez a kérdés témán kívüli . Jelenleg nem fogadja el a válaszokat.

Válasz

A hiba a lekérdezés első sorában az “id” kifejezésre utal. Az SQL Server nem tudja, hogy a tbldata.id-re vagy a tblimg.id-re hivatkozik-e.

Jó gyakorlat, ha mindig álnevet használunk, hogy a táblázatséma változásai kisebb eséllyel törjék meg a lekérdezést:

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

Megjegyzések

  • Az oszlopok elnevezése mellett egy másik bevált módszer az oszlopok megnevezése a leíróval együtt az osztály, például CustomerID csak ID helyett.
  • ^ amit Dan mondott, x1000. képes felismerni egy oszlopazonosítót, mint például a ID, mint amit képvisel, függetlenül attól, hogy hol található a sémában vagy egy lekérdezésben. Néhányan azt állítják, hogy ' felesleges a saját táblázatában, de ' ritkán próbálod kitalálni, mi az, amikor ' csak keresel a következetesség fontosabb, mint az redundancia elkerülése. IMHO.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük