我對sql和編程比較新,所以請耐心等待。如何在sql查詢中使用變量作爲子句?
我有其中存在類似於以下三列的表格:
penID inkID color
01 2 red
02 2 red
03 2 red
04 1 blue
05 1 blue
06 3 black
07 3 purple
08 -5 yellow
有一個獨特penID到每一個筆,每inkID應該對應於它的正確的顏色(具有inkID = 2每筆應僅對應於紅色),但我們需要追蹤一些異常情況。 現在,假設我有數千個不是連續的數字的inkID(我們可以有2,6,7,8,11..
)
我所做的是查詢獲取所有可用InkID的列表,而不是我想要的針對每個InkID的另一個查詢來驗證相同的inkID是否有不同的顏色。
因爲我有成千上萬,我不知道該怎麼做,而不必手動編寫一千個查詢(不是一個機會)。 我正在考慮使用c#框架將第一個查詢的輸出存儲在列表中,並將第二個查詢中的每個列表項作爲變量傳遞,但我不知道這是否可能。
這是迄今爲止我的第二個查詢:
Select distinct Color
from TableName
where InkID = 12
(比方說12的就事論事)
任何建議是有,我可以用任何其他方法?
預先感謝您
你爲什麼認爲你需要編寫數千個查詢?我會建議在基本SQL教程上進行谷歌搜索,以及如何在網上構建我們稱之爲「參數化查詢」的大量示例。 – MethodMan
如果將作品添加到此目標中,該功能將會很棒 –
類似於'選擇inkid,通過inkid從表格組中計數(不同的顏色)應該給你一個墨水ID列表和每個人有多少不同的顏色。如果你真的想要的顏色只是'選擇不同的墨水,顏色從表' – juharr