0
我有一個查詢更換第二值,如果計數大於一個
select * from a;
現在返回我三行像
ID NAME VALUE
1 A B
2 A C
3 D E
現在我想的是,如果NAME重複然後XYZ將返回而不是A
。
我該怎麼做?
我有一個查詢更換第二值,如果計數大於一個
select * from a;
現在返回我三行像
ID NAME VALUE
1 A B
2 A C
3 D E
現在我想的是,如果NAME重複然後XYZ將返回而不是A
。
我該怎麼做?
SELECT
ID,
IF(Name = @prev, 'XYZ', Name) AS Name,
Value
, @prev:=Name
FROM a
, (SELECT @prev:=NULL) var
ORDER BY ID
如果我正確理解你的問題,然後嘗試
SELECT t1.id,
CASE
WHEN t1.c > 1 THEN 'xyz'
ELSE name AS n,
t1.value
FROM
(
SELECT id,name,count(name) c,value
FROM a
GROUP BY name
) t1
什麼是理想的結果的工作生活? 'A ... XYZ ... D'或'XYZ ... XYZ ... D'? – fancyPants
期望的結果是A ... XYZ ... D –