好的,她是我的問題。我有3列的表:C1,C2,C3在MYSQL中,我們可以使用普通SELECT SQL而不是使用存儲過程來執行循環嗎?
C1 - C2 - C3 M - is - M1 N2 - is - N3 M2 - is - M3 M3 - is - M4 N1 - is - N2 M1 - is - M2 N - is - N1
因此,當用戶搜索 「M1」,系統會顯示:
M1 M2 M3 M4
,當用戶搜索 「M3」系統會顯示:
M3 M4
當 「N」 用戶搜索,系統會顯示:
N N1 N2 N3
顯然,這種查詢需要某種循環,即在「is」之後搜索任何單詞,然後在該單詞之後繼續搜索單詞。
我想在MySQL中使用普通的「選擇SQL」而不是使用存儲過程來完成這項任務。但我不知道該怎麼做。
我們是否必須使用「WITH」關鍵字?
如何在不使用存儲過程的情況下執行上述查詢?
搜索的術語是「傳遞閉包」。請參閱http://en.wikipedia.org/wiki/Recursive_closure#In_database_query_languages –