Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从SELECT语句中排除列_Sql_Vb.net_Ms Access 2007 - Fatal编程技术网

Sql 从SELECT语句中排除列

Sql 从SELECT语句中排除列,sql,vb.net,ms-access-2007,Sql,Vb.net,Ms Access 2007,你好,我想知道如何从SELECT语句中排除列, 我有两张桌子 第一张表: |--ID--|--Name--|--Date 1--|--Date 2--| 第二张表: |--ID--|--Tax--|--Total--| 输出: |--ID--|--Name--|--Date 1--|--Date 2--|--ID--|--Tax--|--Total--| 这是我想要的输出: |--Name--|--Tax--|--Total| 这是我的密码: Dim loadq As St

你好,我想知道如何从SELECT语句中排除列, 我有两张桌子

第一张表:

 |--ID--|--Name--|--Date 1--|--Date 2--|
第二张表:

|--ID--|--Tax--|--Total--|
输出:

  |--ID--|--Name--|--Date 1--|--Date 2--|--ID--|--Tax--|--Total--|
这是我想要的输出:

   |--Name--|--Tax--|--Total| 
这是我的密码:

Dim loadq As String =
            "SELECT HelperEmpEarns.*, HelperEmpDed.*" & _
            "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
            "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"

只需列举要显示的字段,而不是放置*,这意味着所有字段:

Dim loadq As String =
                "SELECT HelperEmpEarns.[Name], HelperEmpDed.Tax, HelperEmpDed.Total" & _
                "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
                "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"

我将[Name]放在方括号中,以帮助将其识别为字段名,而不是SQL关键字。

只需列举要显示的字段,而不是放*,这意味着所有字段:

Dim loadq As String =
                "SELECT HelperEmpEarns.[Name], HelperEmpDed.Tax, HelperEmpDed.Total" & _
                "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
                "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"

我将[Name]放在方括号中,以帮助将其识别为字段名,而不是SQL关键字。

只需列举要显示的字段,而不是放*,这意味着所有字段:

Dim loadq As String =
                "SELECT HelperEmpEarns.[Name], HelperEmpDed.Tax, HelperEmpDed.Total" & _
                "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
                "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"

我将[Name]放在方括号中,以帮助将其识别为字段名,而不是SQL关键字。

只需列举要显示的字段,而不是放*,这意味着所有字段:

Dim loadq As String =
                "SELECT HelperEmpEarns.[Name], HelperEmpDed.Tax, HelperEmpDed.Total" & _
                "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
                "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"
我将[Name]放在方括号中,以帮助将其识别为字段名,而不是SQL关键字。

只需选择所需的列,而不是全部*

只需选择所需的列,而不是所有列*

只需选择所需的列,而不是所有列*

只需选择所需的列,而不是所有列*

使用Select HELPEREMPERANS.*将返回表中的所有列名。这通常被认为不是一个好的开发实践

一种更可取的方法是只返回您需要的列,选择HelperEmperans.Col1Name、HelperEmperans.Col2Name

这有几个优点:

如果有人更改数据库设计并添加或删除列,则不会影响您的查询,除非他们正在删除您需要的列之一。 与返回所有列相比,返回的数据集可能要小得多。 所以,像这样改变它:

Dim loadq As String =
            "SELECT HelperEmpEarns.Col1Name, HelperEmpEarns.Col2Name, HelperEmpEarns.Col3Name, " & _
            "HelperEmpDed.Col1Name, HelperEmpDed.Col2Name" & _
            "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
            "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"
使用Select HELPEREMPERANS.*将返回表中的所有列名。这通常被认为不是一个好的开发实践

一种更可取的方法是只返回您需要的列,选择HelperEmperans.Col1Name、HelperEmperans.Col2Name

这有几个优点:

如果有人更改数据库设计并添加或删除列,则不会影响您的查询,除非他们正在删除您需要的列之一。 与返回所有列相比,返回的数据集可能要小得多。 所以,像这样改变它:

Dim loadq As String =
            "SELECT HelperEmpEarns.Col1Name, HelperEmpEarns.Col2Name, HelperEmpEarns.Col3Name, " & _
            "HelperEmpDed.Col1Name, HelperEmpDed.Col2Name" & _
            "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
            "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"
使用Select HELPEREMPERANS.*将返回表中的所有列名。这通常被认为不是一个好的开发实践

一种更可取的方法是只返回您需要的列,选择HelperEmperans.Col1Name、HelperEmperans.Col2Name

这有几个优点:

如果有人更改数据库设计并添加或删除列,则不会影响您的查询,除非他们正在删除您需要的列之一。 与返回所有列相比,返回的数据集可能要小得多。 所以,像这样改变它:

Dim loadq As String =
            "SELECT HelperEmpEarns.Col1Name, HelperEmpEarns.Col2Name, HelperEmpEarns.Col3Name, " & _
            "HelperEmpDed.Col1Name, HelperEmpDed.Col2Name" & _
            "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
            "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"
使用Select HELPEREMPERANS.*将返回表中的所有列名。这通常被认为不是一个好的开发实践

一种更可取的方法是只返回您需要的列,选择HelperEmperans.Col1Name、HelperEmperans.Col2Name

这有几个优点:

如果有人更改数据库设计并添加或删除列,则不会影响您的查询,除非他们正在删除您需要的列之一。 与返回所有列相比,返回的数据集可能要小得多。 所以,像这样改变它:

Dim loadq As String =
            "SELECT HelperEmpEarns.Col1Name, HelperEmpEarns.Col2Name, HelperEmpEarns.Col3Name, " & _
            "HelperEmpDed.Col1Name, HelperEmpDed.Col2Name" & _
            "FROM (HelperEmpEarns RIGHT JOIN HelperEmpDed ON HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID) " & _
            "WHERE [Position] LIKE '%Helper%' AND [Pday1] >= # " & MetroDateTime1.Value.ToShortDateString & "# AND [Pday2] <= # " & MetroDateTime2.Value.ToShortDateString & "# AND HelperEmpEarns.EmpPID = HelperEmpDed.EmpPID"

您可以使select语句更加具体,并去掉通配符*

SELECT firstTable.Name, SecondTable.Tax, SecondTable.Total
    ...

查看SELECT语句的更多信息。

您可以使SELECT语句更具体,并去掉通配符*

SELECT firstTable.Name, SecondTable.Tax, SecondTable.Total
    ...
SELECT firsttable.name,secondtable.tax,secondtable.total 
FROM firsttable 
JOIN secondtable using(ID);

查看SELECT语句的更多信息。

您可以使SELECT语句更具体,并去掉通配符*

SELECT firstTable.Name, SecondTable.Tax, SecondTable.Total
    ...
SELECT firsttable.name,secondtable.tax,secondtable.total 
FROM firsttable 
JOIN secondtable using(ID);

查看SELECT语句的更多信息。

您可以使SELECT语句更具体,并去掉通配符*

SELECT firstTable.Name, SecondTable.Tax, SecondTable.Total
    ...
SELECT firsttable.name,secondtable.tax,secondtable.total 
FROM firsttable 
JOIN secondtable using(ID);

查看SELECT语句的更多信息。

不要使用*包含所有列,只需使用表名和列从表中获取特定列,而不要使用*包含所有列,只需使用表名和列从表中获取特定列,而不要使用*包含所有列,只需使用表名with column从表中获取特定列,而不是使用*包含所有列,只需使用表名with column从表中获取特定列
SELECT firsttable.name,secondtable.tax,secondtable.total 
FROM firsttable 
JOIN secondtable using(ID);