-
select where left in left
hello
for MS SQL 2000, i cannot get it
i am having names like AB_12 I want to get all rows with left part similar , AB im that case
SELECT id, name
FROM Users
WHERE LEFT(name, CHARINDEX('_', name) - 1) AS name IN
(
SELECT LEFT(name, CHARINDEX('_', name) - 1) AS ns
FROM Users
GROUP BY LEFT(name, CHARINDEX('_', name) - 1)
HAVING (COUNT(*) > 1)
)
does not work
is there any way to use a variable ?
declare @nm nvarchar
set @nm = SELECT LEFT(name, CHARINDEX('_', name) - 1) AS ns
FROM Users
thank you for helping
Last edited by anselme; 12-20-2006 at 05:48 AM.
-
Try this
SELECT id, name
FROM Users
WHERE LEFT(name, CHARINDEX('_', name) - 1) IN
(
SELECT LEFT(name, CHARINDEX('_', name) - 1)
FROM Users
GROUP BY LEFT(name, CHARINDEX('_', name) - 1)
HAVING COUNT(*) > 1)
)
-
thank you
it works with
WHERE CHARINDEX('_', name) > 0
AND LEFT(name, CHARINDEX('_', name) - 1) IN
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
|