gpt4 book ai didi

mysql - 如果每个值出现在 MYSQL 的组中,如何为每个值返回 'true/false'?

转载 作者:行者123 更新时间:2023-11-30 21:39:46 25 4
gpt4 key购买 nike

我的目标是检查值列表是否出现在某些值组中,并在显示所有组时以 true/false boolean 值回答该问题。这是一个非常简单的例子:

以下是 Actor 名单,以及他们出演的电影:我的目标是返回一个包含以下列的表:电影的名字, Actor 的名字,还有一栏“他在这部电影里演过戏吗”?您可以在结果表中看到,每部电影都出现了所有 Actor ,即使他们没有播放电影,并且所有电影名称都出现了,即使其中没​​有任何 Actor 。当按电影名称排序,并按播放器名称进行子排序时,非常感谢您的建议,

<!-- begin snippet: js hide: false console: true babel: false -->
    <style type="text/css">
table.tableizer-table {
font-size: 12px;
border: 1px solid #CCC;
font-family: Arial, Helvetica, sans-serif;
}
.tableizer-table td {
padding: 4px;
margin: 3px;
border: 1px solid #CCC;
}
.tableizer-table th {
background-color: #104E8B;
color: #FFF;
font-weight: bold;
}
</style>
<table class="tableizer-table">
<thead><tr class="tableizer-firstrow"><th>Actor</th><th>Movie Name</th></tr></thead><tbody>
<tr><td>Brad Pitt</td><td>inglourious basterds</td></tr>
<tr><td>Matt Damon</td><td>Ocean's Eleven</td></tr>
<tr><td>Leonardo DiCaprio</td><td>The Departed</td></tr>
<tr><td>Brad Pitt</td><td>Ocean's Eleven</td></tr>
<tr><td>Matt Damon</td><td>The Departed</td></tr>
<tr><td>Christoph Waltz </td><td>inglourious basterds</td></tr>
<tr><td>Leonardo DiCaprio</td><td>The Wolf of Wall Street</td></tr>
</tbody></table>

<div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
<div class="snippet-code">
<pre class="snippet-code-html lang-html prettyprint-override"><code> <style type="text/css">
table.tableizer-table {
font-size: 12px;
border: 1px solid #CCC;
font-family: Arial, Helvetica, sans-serif;
}
.tableizer-table td {
padding: 4px;
margin: 3px;
border: 1px solid #CCC;
}
.tableizer-table th {
background-color: #104E8B;
color: #FFF;
font-weight: bold;
}
</style>
<table class="tableizer-table">
<thead><tr class="tableizer-firstrow"><th>Movie Name</th><th>Actor</th><th>did he played?</th></tr></thead><tbody>
<tr><td>inglourious basterds</td><td>Brad Pitt</td><td>TRUE</td></tr>
<tr><td>inglourious basterds</td><td>Christoph Waltz </td><td>TRUE</td></tr>
<tr><td>inglourious basterds</td><td>Leonardo DiCaprio</td><td>FALSE</td></tr>
<tr><td>inglourious basterds</td><td>Matt Damon</td><td>FALSE</td></tr>
<tr><td>Ocean's Eleven</td><td>Brad Pitt</td><td>TRUE</td></tr>
<tr><td>Ocean's Eleven</td><td>Christoph Waltz </td><td>FALSE</td></tr>
<tr><td>Ocean's Eleven</td><td>Leonardo DiCaprio</td><td>FALSE</td></tr>
<tr><td>Ocean's Eleven</td><td>Matt Damon</td><td>TRUE</td></tr>
<tr><td>The Departed</td><td>Brad Pitt</td><td>FALSE</td></tr>
<tr><td>The Departed</td><td>Christoph Waltz </td><td>FALSE</td></tr>
<tr><td>The Departed</td><td>Leonardo DiCaprio</td><td>TRUE</td></tr>
<tr><td>The Departed</td><td>Matt Damon</td><td>TRUE</td></tr>
<tr><td>The Wolf of Wall Street</td><td>Brad Pitt</td><td>FALSE</td></tr>
<tr><td>The Wolf of Wall Street</td><td>Christoph Waltz </td><td>FALSE</td></tr>
<tr><td>The Wolf of Wall Street</td><td>Leonardo DiCaprio</td><td>TRUE</td></tr>
<tr><td>The Wolf of Wall Street</td><td>Matt Damon</td><td>FALSE</td></tr>
</tbody></table></code></pre>
</div>
</div>

最佳答案

您可以将表与其自身交叉连接,并在相关查询上使用 exists 运算符:

SELECT a.actor, b.movie, EXISTS (SELECT *
FROM mytable c
WHERE a.actor = c.actor AND b.movie = c.movie) AS played
FROM (SELECT DISTINCT actor FROM mytable) a
CROSS JOIN (SELECT DISTINCT movie FROM mytable) b

关于mysql - 如果每个值出现在 MYSQL 的组中,如何为每个值返回 'true/false'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52211971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com