SQL查询将列值显示为表中的列名

时间:2019-06-06 17:59:07

标签: sql database tsql

我在表“ Greeting”中有一个字段名“ Title”。 UI中的“标题”字段可能是“名字”或“姓氏”或两者的组合。

问候表如下:

<!DOCTYPE html>
<html>
<head>
<style>
table, th, td {
  border: 1px solid black;
  border-collapse: collapse;
}
</style>
</head>
<body>

<h2>Collapsed Borders</h2>
<p>If you want the borders to collapse into one border, add the CSS border-collapse property.</p>

<table style="width:50%">
  <tr>
    <th>Title</th>
  </tr>
  <tr>
    <td>FirstName</td>
  </tr>
  <tr>
    <td>LastName</td>
  </tr>
  <tr>
    <td>nickName</td>
  </tr>
  <tr>
    <td>preferredName</td>
  </tr>
</table>

</body>
</html>

我需要编写一个SQL查询来查找仅具有标题FirstName,仅LastName以及FirstName和LastName并以下表格式显示的查询。 创建列名,分别为名字和姓氏,如果显示则用“是”表示,如果不显示则用“否”表示。

<!DOCTYPE html>
<html>
<head>
<style>
table, th, td {
  border: 1px solid black;
  border-collapse: collapse;
}
</style>
</head>
<body>

<h2>Collapsed Borders</h2>
<p>If you want the borders to collapse into one border, add the CSS border-collapse property.</p>

<table style="width:100%">
  <tr>
    <th>Firstname</th>
    <th>Lastname</th> 
  </tr>
  <tr>
    <td>Yes</td>
    <td>No</td>
  </tr>
  <tr>
    <td>No</td>
    <td>Yes</td>
  </tr>
  <tr>
    <td>Yes</td>
    <td>Yes</td>
  </tr>
</table>

</body>
</html>

我在下面的查询中编写了代码,并获得了“标题”的各个信息,但无法以表列名格式获取列值。您能帮我获取该表格格式的输出数据吗?

Select distinct Title from Greeting  WHERE  Title in ('FirstName','LastName') 
Select distinct Title from Greeting  WHERE  Title ='FirstName'
Select distinct Title from Greeting  WHERE  Title = 'LastName'

1 个答案:

答案 0 :(得分:1)

我尝试了“数据透视”,这帮助我获得了该表格格式的输出数据