PDA

View Full Version : Giúp mình câu lệnh SELECT



tantripy
17-06-2011, 01:18
Mình muốn lấy 2 dữ liệu từ 1 column trong 1 table với 2 điều kiện khác nhau nhưng ko biết phải làm thế nào :(

Ví dụ như mình có bảng này:

ListAccount
ID/name
1/a
2/b
3/c

và mình muốn output thế này.
a,c
:( help me...

Vì tất nhiên mình ko thể Select name, name FROM ListAccount WHERE Id = 1 OR Id = 2 đc :(

chip07
17-06-2011, 08:42
--ListAccount
--ID/name
--1/a
--2/b
--3/c

DECLARE @ListAccount TABLE (ID bigint, Name nvarchar(50))
DECLARE @s nvarchar(max)

INSERT INTO @ListAccount (ID, Name)
VALUES (1,'a'), (2,'b'), (3,'c')

SELECT @s = COALESCE(@s + ',' + Name, Name)
FROM @ListAccount
WHERE (ID = 1)
OR (ID = 3)

SELECT @s
-- a,c

dinhanhency
17-06-2011, 09:19
Mình muốn lấy 2 dữ liệu từ 1 column trong 1 table với 2 điều kiện khác nhau nhưng ko biết phải làm thế nào :(

Ví dụ như mình có bảng này:

ListAccount
ID/name
1/a
2/b
3/c

và mình muốn output thế này.
a,c
:( help me...

Vì tất nhiên mình ko thể Select name, name FROM ListAccount WHERE Id = 1 OR Id = 2 đc :(

Có vài cách. 1 trong những là sau.


SELECT Id,MAX(Name1) AS Name1, MAX(Name2) as name2 FROM
(SELECT 1 as Id,Name AS Name1,'' AS Name2 FROM ListAccount WHERE Id=1
UNION
SELECT 1 as Id,'' AS Name1,Name AS Name2 FROM ListAccount WHERE Id=2) a GROUP BY Id