J'ai une fonction SQL avec SQL suivante dans:Comment transmettre une liste de valeurs à comparer dans une fonction SQL dans SQL Server 2008?
SELECT StockID FROM (SELECT DISTINCT StockID,
ROW_NUMBER() OVER(ORDER BY DateAdded DESC) AS RowNum
FROM Stock
WHERE CategoryCode LIKE @CategoryID) AS Info
WHERE RowNum BETWEEN @startRowIndex AND (@startRowIndex + @maximumRows) - 1
J'ai un paramètre @CategoryID - mais je dois prendre dans une pièce d'identité de la catégorie tels que « BA » et a traduit une liste des ID de catégorie tels que « IE », « EG » etc donc ma clause WHERE ressemble à:
WHERE (CategoryCode LIKE 'IE' OR CategoryCode LIKE 'EG') AS Info
J'ai une table de consultation qui contient le code « BA », puis tous les codes réels de la catégorie, cela signifie par exemple que « IE » et "EG". Comment est-ce que j'ai l'extension de catégorie à plusieurs instructions "OR" dans ma fonction SQL? Je ne sais pas comment faire, quelqu'un peut-il résoudre ce problème? À l'heure actuelle la requête telle que montrée peut faire face à un CategoryID tel que "IE", ceci est fait comme je veux une page de catégorie telle que category.aspx où un paramètre "BA" est passé tel que category.aspx? category = BA et cette page listera tous les articles avec les codes de catégorie "EG" et "IE".
La raison pour laquelle j'ai besoin de ceci est qu'il y a un code de catégorie "parent" qui a plusieurs codes de catégorie "enfants" qui sont différents du code parent. J'utilise ASP.NET et .NET 3.5 sur le front-end si cela aide.
Y a-t-il une bonne raison de ne pas utiliser LINQ to SQL ici? –
J'ai seulement utilisé LINQ pour XML donc je ne sais pas comment le faire pour SQL, mais une idée intéressante. – RoguePlanetoid
comment votre requête peut-elle avoir 2 clauses WHERE? –