80 sütun ve 300 satır döndüren bir saklı yordam var. Bu sütunlardan 2'sini alan bir seçim yazmak istiyorum. Gibi bir şey
SELECT col1, col2 FROM EXEC MyStoredProc 'param1', 'param2'
Yukarıdaki sözdizimini kullandığımda hatayı alıyorum:
"Geçersiz sütun ismi".
Saklı yordamı değiştirmek için en kolay çözüm olacağını biliyorum, ama yazmadım ve değiştiremiyorum.
İstediğimi yapmanın bir yolu var mı?
Sonuçları koymak için bir geçici tablo yapabilir, ancak 80 sütun olduğundan, sadece 2 sütun almak için 80 sütun geçici tablo yapmak gerekir. Döndürülen tüm sütunları izlemekten kaçınmak istedim.
WITH SprocResults AS ....
Mark'ın önerdiği şekilde kullanmayı denedim , ancak 2 hata aldım'EXEC' anahtar kelimesinin yanında yanlış sözdizimi.
Yanlış sözdizimi yanında ')'.Bir tablo değişkeni bildirmeye çalıştım ve aşağıdaki hatayı aldım
Ekleme Hatası: Sütun adı veya sağlanan değerlerin sayısı tablo tanımıyla eşleşmiyor
Eğer denersem
SELECT * FROM EXEC MyStoredProc 'param1', 'param2'
hatayı alıyorum:'Exec' anahtar kelimesinin yanında yanlış sözdizimi.
EXEC
bir MySQL anahtar kelimesi değildir (MySQL eşdeğeri ifadeler hazırlanmıştır ). MySQL'in cevabını bilmek istesem de, aşağıdaki cevaplar T-SQL'i hedefliyor. Yeniden Etiketleme.