[英]Mysql Query Understanding
我有一個關於如何查詢此信息的快速問題
所以說在我的數據庫中,我有以下主題
Welcome Center Group 1
Members Questions Group 2
Admin Ops Group 3
和一個用戶表
User 1 Group 1
User 2 Group 2
User 3 Group 3
和一組表
1 Register User
2 Member
3 Admin
好的,那就像是一個數據庫,現在說我只想注冊一個組1的用戶才能看到組1的項目。
"SELECT * FROM topic WHERE group = 1"
因此,他們看不到會員和管理員的資料。
這是問題開始的地方。
我需要在哪里找到查詢,或者得知我們允許成員查看注冊用戶主題和成員主題。
"SELECT * FROM topic WHERE group = 1 AND group = 2"
如您所見,這個示例並不確定我是否需要這樣做。
與管理員相同,我需要他們能夠查看注冊的用戶主題,成員主題和管理主題。 所以這三個。
"SELECT * FROM topic WHERE group = 1 AND group = 2 AND group = 3"
正如您所看到的,在我浪費時間編寫不是這樣的東西但查詢有點兒困擾我之前,我不是百分百確定這是否行得通。
如果要使所有主題都具有兩個組,請使用aggregation和having
子句:
SELECT t.topic
FROM topic t
GROUP BY t.topic
HAVING SUM(group = 1) > 0 AND
SUM(group = 2) > 0;
請注意, group
是列的壞名稱,因為它是保留字。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.