在MySQL中,我試圖從表中選擇行使用WHERE
子句,這是不固定的(預先知道),而是存儲在另一個表中並且將在運行時從另一個表中拉出。選擇與WHERE子句存儲爲另一個表中的字符串
雖然看似類似的問題已經發布在Stackoverflow上,但沒有一個能夠完全覆蓋這個問題。
我想要實現的是以下幾點:
SELECT * FROM users WHERE (SELECT user_condition FROM user_condition_table WHERE id = '1')
子查詢
SELECT user_condition FROM user_condition_table WHERE id = '1'
會產生串
FIRST_NAME像 'BR' 和姓氏LIKE' A%'
所以整個查詢看起來像:
SELECT * FROM users WHERE first_name like 'Br' and last_name like 'A%'
我想這裏的問題是,從選擇返回的字符串返回爲字符串,而不是作爲一個SQL語句。 有什麼辦法可以做到這一點?
您需要了解動態SQL。你不能用簡單的'select'來做到這一點。 –
你爲什麼不簡單地分兩步來做?例如,在PHP中,您可以首先獲取子查詢結果,然後構建主查詢。 –
@KIKOSoftware我想在Mysql中保持這項任務自動化,而無需使用任何編碼語言。 –