2011-11-02 93 views
0

假設我們從php代碼中檢索表格數據。

1-不從表中刪除和恢復特定的行和,
2-不具有列「hidden」(值是0或1),並使用查詢
SELECT ..... WHERE....AND hidden=0

是否有可能臨時「隱藏」一些行?
或者最好的辦法是做什麼?我們可以在MySQL中隱藏一些行嗎?

回答

3

另一種方法是創建一個VIEW不包括不需要的行;如果要求具有(半)永久性,這可能會更好。有關更多信息,請參見here

+0

無論如何,我將不得不爲視圖有不同的名稱(與表名不一樣)?然後,我們需要修改查詢。但似乎無論如何我需要修改查詢。這可能是最簡單的解決方案,因爲我們只需要更改'SELECT FROM xxxxx'部分。 – Dinushan

0

由於隱藏標記已經完成(隱藏= 1),因此無法隱藏而不刪除。

雖然正確的方法是改變第一查詢,因爲你不會檢索不需要的數據,您可以:

  • 查詢的查詢,添加「其中隱藏= 0」部分
  • 過濾處理表的腳本中的數據
  • 在預過濾(其中hidden = 0)的數據庫上添加一個視圖
  • 過濾客戶端上的數據(以隱藏所有內容開始並使用jquery顯示您的內容想(不推薦作爲解決方案雖然)
+0

我認爲提問者說他​​們不想使用「隱藏」列,而不是他們有一個。 – Fenton

+0

我在想他不能修改原始查詢! –

+0

'...沒有列'隱藏'...' - 所以沒有隱藏的列。 – Fenton

1

你怎麼知道你想刪除哪些行?例如,如果你知道每一行的id,你可以排除追加到您的查詢

AND id NOT IN (4,9,28) 
相關問題