亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有沒有一種方法可以根據可以等于多個值的列的值從sql表中檢索數據?

有沒有一種方法可以根據可以等于多個值的列的值從sql表中檢索數據?

PHP
一只名叫tom的貓 2024-01-19 10:23:19
我有一個 SQL 表,其中包含有關項目的一些信息,大致如下表所示。在此表中,一個項目可能有多個實例,因為它有多個任務。每個任務都有一個狀態,每個狀態都有一個與其相關的 ID。如何編寫一個查詢來獲取項目 1 的所有狀態等于打開、關閉、計費或取消的實例?即使項目一沒有狀態為已取消的實例?PROJECT NAME|PROJECT ID|TASK|STATUS|status_code    project_1        1       seo  open   5project_1        1       blog closed 0 project_1        1       data billed 2 project_2        2       seo  open   5project_3        3       seo  open   5project_4        4       seo  open   5project_5        5       seo  open   5注意:每個狀態都與一個狀態 ID 相關聯0 = closed 1 = cancelled 2 = billed 3 = paid 4 = on hold 5 = open 6 = pending 截至目前我的查詢看起來像"SELECT * FROM Table WHERE project_id = 1 AND Status_Code = (0 OR 1 OR 2 OR 3 OR 4 OR 5 OR 6)"盡管表中存在多個 status_code = 2 0 & 5 實例,但這不會返回任何內容如果我將查詢更改為SELECT * FROM table WHERE project_id = 1 AND status_code = 2我確實獲得了狀態代碼 2 的所有實例,但我需要能夠檢查所有這些實例,并且可能正在查詢的項目中不存在實例。
查看完整描述

2 回答

?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

嘗試這個


SELECT * FROM Table 

WHERE project_id = 1 AND Status_Code IN( 1, 2, 3, 4, 5, 6)

另外,您可能想過濾掉重復項,所以也許


SELECT DISTINCT [PROJECT NAME], [PROJECT ID]

FROM Table 

WHERE project_id = 1 AND Status_Code IN( 1, 2, 3, 4, 5, 6)


查看完整回答
反對 回復 2024-01-19
?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

首先,如果這是一個任務表,為什么沒有任務 ID?


如果我對問題的理解正確,那么GROUP BY或者DISTINCT


SELECT project_id, task, status FROM Table WHERE project_id = 1 AND Status_Code IN (0,1,2,3,4,5,6)

GROUP BY

project_id, task, status

這將返回所有 3 列 uainv 的每個不同值,如果沒有 group by,將返回相同的值


查看完整回答
反對 回復 2024-01-19
  • 2 回答
  • 0 關注
  • 171 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號