我有一个结构如此的表(简化)
Name, EMail, LastLoggedInAt
我在 SQL Server (RemoteUser) 中有一个用户应该只能看到 LastLoggdInAt 字段不为空的数据(通过选择查询)。
看起来我可以做到这一点?可能吗?
我有一个结构如此的表(简化)
Name, EMail, LastLoggedInAt
我在 SQL Server (RemoteUser) 中有一个用户应该只能看到 LastLoggdInAt 字段不为空的数据(通过选择查询)。
看起来我可以做到这一点?可能吗?
示例查询
SELECT * FROM Table WHERE ID in (5,3,4)
我如何调整此查询,以便返回条目的顺序遵循 ID 的输入(IE,5 第一,3 第二,4 第三)。
编辑 - 要清楚 ID 是一个按正确顺序动态生成的列表。
假设我有以下结构......
Structures
- ID
- Name
Fields
- ID
- StructureID
- Key
这些表包含简单的“结构”(认为非常简单的表)。
然后有一个额外的表
DataValues
- ID
- FieldID
- Value
- RowID
表内的示例数据...
ID | FieldID | Value | RowID
1 | 5 | Blog Post Title | 1
2 | 6 | Blog Post Body | 1
3 | 5 | Another Post H1 | 2
4 | 6 | Another Body | 2
现在我希望能够对每个数据集进行动态查询,因此获取所有遵循特定模式的 RowID。
SELECT DV.RowID FROM DataValues as DV
INNER JOIN Fields as F ON DV.FieldID = F.ID
INNER JOIN DataRows as DR ON DV.RowID = DR.ID
WHERE DR.StructureID = 2
AND (F.[Key] = 'Title' AND DV.[Value] = 'Blog Post Title')
问题是当我们想要做多个条件时
SELECT DV.RowID FROM DataValues as DV
INNER JOIN Fields as F ON DV.FieldID = F.ID
INNER JOIN DataRows as DR ON DV.RowID = DR.ID
WHERE DR.StructureID = 2
AND (F.[Key] = 'Title' AND DV.[Value] = 'Blog Post Title')
AND (F.[Key] = 'Body' AND DV.[Value] <> 'A Body We Dont Want')
这显然行不通,有没有办法查询数据的子集?