簡體   English   中英

選擇除SQL中的一個字段以外的所有字段

[英]Select all except one field in SQL

我想創建一個函數,該函數在數據庫中選擇所有具有其屬性的字符,但執行該函數的字符除外,並且由於我是SQL新手,所以我想知道是否有一種方法可以做到這一點: SELECT * FROM 'table name' EXCEPT 'the character executing the function'

例如,如果一個角色扮演游戲中的玩家想要攻擊某人,我想將他可以攻擊的其他玩家的整個列表放到數據庫中。 但是,如果我SELECT * FROM 'table name' ,他將在列表中,我不希望他攻擊自己...

我在Google上搜索,但在這里我只找到了選擇除列以外的所有內容的解決方案,但我希望將其用於字段。

謝謝閱讀。

您必須添加一個where子句:

SELECT * FROM 'tableName' WHERE characterId != 5

5是執行功能的字符的ID

我建議您使用sub query 獲取已執行該功能的所有名稱,並將這些名稱保留在NOT IN 有關信息,請記錄執行該功能的人員的姓名。 NOT IN示例

SELECT * FROM table_name WHERE name NOT IN (
     SELECT name FROM table_name_where_executed_name_stored WHERE executed = 1
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM