2011-07-26 30 views
1

我希望有一個單一查詢多個選擇,我的目的是爲了降低MySQL的過程,所以我用這個查詢,但它不工作:在同一個表中如何將多個選擇,在單個查詢

SELECT * 
    FROM `my_setting` 
WHERE `setting` = `site_url` 
    AND `setting` = `site_name` 

我使用select UNION查詢,但我認爲它不會減少內存。

+0

使用的替代或比較器和 – rabudde

+0

你們是不是要選擇的所有行「設置」或者是「SITE_NAME」或者'site_url'?在這種情況下,我想你會想要使用OR而不是AND。使用AND時,查詢返回的結果是沒有結果,因爲設置不能等於兩個不同的東西 – marklar

+0

波希米亞給我答案:)謝謝。 ..對不起,我不能投票我的聲望只有1.謝謝你們所有人 – oknoorap

回答

3

認爲你想要麼:

SELECT * FROM my_setting 
WHERE `setting` in ('site_url', 'site_name') -- if site_url is a literal string 

SELECT * FROM my_setting 
WHERE `setting` in (site_url, site_name) -- if site_url is a column name 
+0

哇謝謝,我是新手在這裏,你真棒 – oknoorap

3

試試這個:你需要去

SELECT * FORM `my_setting` WHERE (`setting` = `site_url` OR `setting` = `site_name`) 

應該讓你。

相關問題