2016-04-08 20 views
0

Parça kategorileri arayan bir saklı yordamımız var. Her zaman tarihsel olarak M ile başladılar, fakat şimdi S'nin başındaki kısımlarda görünmeyen kısımlarımız var.Saklanmış yordam Parça kategorileri ara

M ve S'yi aramak istiyorum, bu nedenle aşağıdaki prosedürde hem Sol'u (CS_REF, 1) = 'M' olarak görmek için nasıl değiştirebilirim? Ben bir programcı değilim

...

ALTER PROCEDURE [dbo].[CatTypes] AS 
SELECT LEFT(CS_REF,3) AS Cat 
FROM a_cstwh 
WHERE LEFT(CS_REF,1) = 'M' 
GROUP BY LEFT(CS_REF,3) 
ORDER BY LEFT(CS_REF,3) 
OPTION (HASH GROUP) 
+0

'IN ('M', 'S') deneyin' –

+0

Toplama işlevleri kullanılmadığında GROUP BY neden kullanılır? – jarlh

+0

tam olarak sahip olduğunuz gibi koydum, WHERE LEFT (CS_REF, 1) = IN ('M', 'S') – Mark2109

cevap

0

bu

SELECT LEFT(CS_REF,3) AS Cat 
FROM a_cstwh 
WHERE LEFT(CS_REF,1) IN ('M', 'S') 
GROUP BY LEFT(CS_REF,3) 
ORDER BY LEFT(CS_REF,3) 
OPTION (HASH GROUP) 

(OR)

SELECT LEFT(CS_REF,3) AS Cat 
FROM a_cstwh 
WHERE LEFT(CS_REF,1) = 'M' OR LEFT(CS_REF,1) = 'S' 
GROUP BY LEFT(CS_REF,3) 
ORDER BY LEFT(CS_REF,3) 
OPTION (HASH GROUP)