SELECT * FROM tblSupport INNER JOIN tblLanguage ON tblSupport.fldID = tblLanguage.fldID INNER JOIN tblCategory ON tblSupport.fldID = tblCategory.fldID ORDER BY tblSupport.fldID
Men ellers ville jeg gøre det via where-sætninger det går hurtigere
SELECT * FROM tblSupport, tblLanguage, tblCategory WHERE tblSupport.fldID = tblLanguage.fldID AND tblSupport.fldID = tblCategory.fldID ORDER BY tblSupport.fldID
SELECT dbo.tblCategory.*, dbo.tblSupport.*, dbo.tblLanguage.* FROM dbo.tblCategory INNER JOIN dbo.tblSupport ON dbo.tblCategory.fldID = dbo.tblSupport.fldCategory INNER JOIN dbo.tblLanguage ON dbo.tblSupport.fldLanguage = dbo.tblLanguage.fldID ORDER BY tblSupport.fldID, tblSupport.fldLanguage
Access should be SELECT tblCategory.*, tblSupport.*, tblLanguage.* FROM tblCategory INNER JOIN tblSupport ON tblCategory.fldID = tblSupport.fldCategory INNER JOIN tblLanguage ON tblSupport.fldLanguage = tblLanguage.fldID ORDER BY tblSupport.fldID, tblSupport.fldLanguage
SELECT tblSupport.*,tblLanguage.*,tblCategory.* FROM tblSupport, tblLanguage, tblCategory WHERE tblSupport.fldID = tblLanguage.fldID AND tblSupport.fldID = tblCategory.fldID ORDER BY tblSupport.fldID
Htm >> Kan godt være jeg vælger at lave det med WHERE sætninger så ... venter lige lidt og ser ...
Begge >> Der hvor jeg prøver at bruge sql-sætning er på en ASPX-side og den giver fejl på jeres forslag (her vist med htm's forslag):
Syntax error (missing operator) in query expression 'tblSupport.fldID = tblLanguage.fldID INNER JOIN tblCategory ON tblSupport.fldID = tblCategory.fldID'.
linien ser sådan her ud:
myDataAdapter.SelectCommand = new OleDbCommand("SELECT * FROM tblSupport INNER JOIN tblLanguage ON tblSupport.fldID = tblLanguage.fldID INNER JOIN tblCategory ON tblSupport.fldID = tblCategory.fldID ORDER BY tblSupport.fldID;", myConnection);
SELECT tblSupport.*, tblCategory.fldName AS fldLanguageName, tblLanguage.fldName AS fldCategoryName FROM tblCategory INNER JOIN tblSupport ON tblCategory.fldID = tblSupport.fldCategory INNER JOIN tblLanguage ON tblSupport.fldLanguage = tblLanguage.fldID ORDER BY tblSupport.fldID, tblSupport.fldLanguage
Copy and paste this into the SQL window SELECT tblSupport.*, tblLanguage.fldName AS fldLanguageName, tblCategory.fldName AS fldCategoryName FROM tblCategory INNER JOIN (tblLanguage INNER JOIN tblSupport ON tblLanguage.fldID = tblSupport.fldLanguage) ON tblCategory.fldID = tblSupport.fldCategory;
SELECT tblSupport.*,tblLanguage.fldName AS Languagename,tblCategory.fldName AS categoryname FROM tblSupport INNER JOIN tblLanguage ON tblSupport.fldID=tblLanguage.fldID INNER JOIN tblCategory ON tblSupport.fldID=tblCategory.fldID ORDER BY tblSupport.fldID
Men jeg vil anbefale dig at bruge Where-sætningerne! Har du prøvet dem?
Terry den siste du gav mig virker både i Access og i ASP.NET. Skyldes fejlen () ? Hvorfor er det FROM tblCategory og ikke tblSupport ? Gør det nogen forskel ?
Din opfattelse! Where is the evidence? IF a WHERE is faster (which it may be) then I find it strange that the SQL generated almost always uses JOINS!
Yes it seems access MUST have () Not sure what you mean here: (Hvorfor er det FROM tblCategory og ikke tblSupport ? ) I am selecting FROM support! Torben its up to you to decide how the points are shared!
Terry >> Jeg mener hvorfor den laver INNER JOIN på tblSupport og så laver SELECT FROM på tblCategory, istedet for at lave INNER JOIN på tblCategory og SELECT FROM på tblSupport ... Det virker mere logisk da tblSupport er hovedtabellen ...
Forstår du hvad jeg mener ?
htm >> Vil også gerne se nogle beviser for at det skulle være hurtigere ... så forstår jeg ikke hvorfor INNER JOIN overhovedet er opfundet?
The FROM isnt the first table name it is ALL three. I've just made the same query again but added the fields in a different order, now see how it looks, but the result is the same
SELECT tblSupport.*, tblLanguage.fldName AS fldLanguageName, tblCategory.fldName AS fldCategoryName FROM (tblSupport INNER JOIN tblLanguage ON tblSupport.fldLanguage = tblLanguage.fldID) INNER JOIN tblCategory ON tblSupport.fldID = tblCategory.fldID ORDER BY tblSupport.fldID, tblSupport.fldLanguage;
Htm >> Okay ... sig til hvis du finder noget dokumentation ... Jeg giver dig lidt mindre point da jeg vælger bruge terry's løsning i første omgang ... men da jeg ikke havde tænkt på at det bare kunne laves med WHERE så det får du da lidt point alligevel :)
Terry >> Okay tak for svaret ... det hjalp på forståelsen :)
Begge >> Mange tak for hjælpen! Håber jeg kan hjælpe jer en anden gang :)
Thanks Torben, I would suggest that you try using Access's query designer, it will save you lots of time in getting your SQL working in your ASP. Just drag and drop the tables you want into the query window and then drag and drop the related fields.
Terry >> Tak for rådet ... jeg må heller begynde at rodde lidt med den Query Designer :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.