|
Question : Using alternative to LIMIT command and using INNER JOIN in MS SQL Query
|
|
Hi,
I have the follwoing SQL:
SELECT a.ContactID, a.CompanyID, a.ContactPrefix, a.ContactFName, a.ContactLName, a.ContactSurfix, a.ContactJobTitle, a.ContactPhone, a.ContactEmail, b.CompanyName, b.CompanyPhone, b.CompanySegment, a.ContactMobile, a.ContactCustRelat, a.ContactAccntMng, a.ContactNotes, b.CompanyFascimile, b.CompanyWeb, a.ContactRcdMng FROM Contact a INNER JOIN Company b ON a.CompanyID = b.CompanyID WHERE (b.CompanySegment LIKE 'Finance') AND (a.ContactRemoved IS NULL) AND (b.CompanyRemoved IS NULL) ORDER BY a.ContactID
This works fine but I also want to add a 'LIMIT' function.
I have the following code which performs the alternative to MySQL LIMIT command.
SELECT contactid, contactlname FROM (SELECT TOP 15 contactid, contactlname FROM (SELECT TOP 45 contactid, contactlname FROM contact ORDER BY contactid ASC) AS newtbl ORDER BY contactid DESC) newtbl2 ORDER BY contactid
I need to use get the LIMIT capability of the second query into the first.
The reason for this is that I am using AJAX to call SQL lines on demand.
Any help would be really appreciated.
Thank you,
SC69
|
|
Answer : Using alternative to LIMIT command and using INNER JOIN in MS SQL Query
|
|
I think I see the problem. I think reusing the "a" prefix in the subquery was messing it up. Try
SELECT a.ContactID, a.CompanyID, a.ContactPrefix, a.ContactFName, a.ContactLName, a.ContactSurfix, a.ContactJobTitle, a.ContactPhone, a.ContactEmail, b.CompanyName, b.CompanyPhone, b.CompanySegment, a.ContactMobile, a.ContactCustRelat, a.ContactAccntMng, a.ContactNotes, b.CompanyFascimile, b.CompanyWeb, a.ContactRcdMng FROM Contact a INNER JOIN Company b ON a.CompanyID = b.CompanyID WHERE (b.CompanySegment LIKE 'Finance') AND (a.ContactRemoved IS NULL) AND (b.CompanyRemoved IS NULL) AND (a.ContactID IN (SELECT TOP 15 contactid FROM (SELECT TOP 45 contactid FROM contact ORDER BY contactid ASC) ORDER BY contactid DESC)) ORDER BY a.ContactID
|
|
|
|