作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有三个数据库表:
故事
<form action="" method="get">
<label for="keyword">Keyword:</label>
<input name="keyword" type="text" value="@Page.Keyword" />
<label for="category">Category:</label>
<select name="category">
<option value="">All</option>
@foreach(var category in Page.Categories)
{
<option value=@category.Id @(category.Id == Page.Category? "selected=selected" : "")>@category.Title</option>
}
</select>
<input type="submit" value="Search" />
</form>
select s.title --columns will be added here such as name of category/ies, author etc.
from story as s
left join --left join so the uncategorized stories will not be excluded
storyCategory as sc
on s.id = sc.storyId
where sc.categoryId = @selectedCategory --this line is removed when there is no category selected
naruto (fantasy)
naruto (action)
bleach (fantasy)
最佳答案
使用 DISTINCT 关键字和 left join 对你的 WHERE 条件没用
select DISTINCT
s.title --columns will be added here such as name of category/ies, author etc.
from story as s
join storyCategory as sc--left join so the uncategorized stories will not be excluded
on s.id = sc.storyId
where sc.categoryId = @selectedCategory --this line is removed when there is no category selected
DECLARE @Stories TABLE(Id INT IDENTITY PRIMARY KEY, NAME NVARCHAR(100) NOT NULL)
DECLARE @Categories TABLE(Id INT IDENTITY PRIMARY KEY, NAME NVARCHAR(100) NOT NULL)
DECLARE @Fork TABLE(StoryId INT NOT NULL, CategoryId INT NOT NULL, PRIMARY KEY(StoryId, CategoryId))
INSERT @Stories
VALUES ('Story1'), ('Story2'), ('Story3')
INSERT @Categories
VALUES ('Category1'), ('Category2'), ('Category3')
INSERT @Fork
VALUES(1,1), (1,2), (3,3), (2,3)
DECLARE @selectedCategory INT = 3
select
s.NAME,
(
SELECT c.Name + ','
FROM @Categories c
JOIN @Fork f ON f.CategoryId = c.Id AND f.StoryId = s.Id
ORDER BY c.Name
FOR XML PATH('')
) Categories
from @stories s
关于SQL - 选择具有多个类别的不同行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8814775/
在我的 android 应用程序中,我想在同一行中实现 2 个文本字段。如果文本太长可以转到下一行。所以我使用了更精简的水平布局并添加了 2 个文本字段。 [例如:TextView1、TextV
由于node使用了javascript,它可以充当webrtc peer吗? 然后我可以将它编码为 VP8 流并广播给所有其他对等方吗? 最佳答案 WebRTC 是一个浏览器 API 而不是 Java
我是一名优秀的程序员,十分优秀!