所以我的任务是,当且仅当他们的所有产品都已停产时,才能返回公司信息。
我有一个Suppliers
和一个Products
表。 Suppliers
表有一个ProductID
列,Products
表有一个ProductID
和一个Discontinued
列,用于存储一个位(1为真或0为假)。
如果有人能够解决这个问题,那就可以节省生命。
编辑:我正在使用的查询将是这样的
select
s.CompanyName, p.ProductName, p.Discontinued
from
Suppliers s
join
Products p on s.SupplierID = p.SupplierID
并且输出将是这样的
CompanyName ProductName Discontinued
-------------------------------------------------------------
Exotic Liquids Chai 0
Exotic Liquids Chang 0
Exotic Liquids Aniseed Syrup 0
New Orleans Cajun Delights Chef Anton's Cajun Seasoning 0
New Orleans Cajun Delights Chef Anton's Gumbo Mix 1
Grandma Kelly's Homestead Grandma's Boysenberry Spread 0
Grandma Kelly's Homestead Uncle Bob's Organic Dried Pears 0
Grandma Kelly's Homestead Northwoods Cranberry Sauce 0
Tokyo Traders Mishi Kobe Niku 1
Tokyo Traders Ikura 0
但我只希望它将供应商退回所有已停产的产品
答案 0 :(得分:0)
我在这里走出困境,但我认为您正在尝试在ProductID上加入两个表格。
如果是这种情况,那么SQL查询将如下所示:
SELECT a.ProductID, b.Discontinued FROM Suppliers a
LEFT JOIN Products b ON (a.productID = b.productID)
WHERE b.Discontinued = true
答案 1 :(得分:0)
function my_redirect_function() {
// check if argument is set
if ( $_GET['find'] ) {
// get site url
$url = get_site_url() . '/' . $_GET['find'];
// clone GET arguments
$query = $_GET;
// remove the find argument
unset( $query['find'] );
// add all get arguments to the new url
$url = add_query_arg( $query, $url );
// redirect to the generated url
wp_redirect( $url );
exit();
}
}
add_action( 'template_redirect', 'my_redirect_function' );
答案 2 :(得分:0)
成为您使用的每种语言的更好的开发人员。停止尝试立即进行翻转。把问题分解成易消化的部分。并学习如何发布好问题。您有一个查询问题 - 您如何在不了解架构和了解如何使用架构的情况下,期望其他人了解您的问题并提供有用的建议。当然 - 在这种情况下它相当简单,但是生成表格的脚本,用样本数据填充它们,并包括你尝试过的任何鼓励他人回应的内容。
因此,第一步是回答“哪些供应仅提供已停产的产品”的问题。显然,您拥有Product中所需的所有信息。类似的东西:
select P.SupplierID from dbo.Products as P
group by P.SupplierID
having min(cast(P.Discontinued as tinyint)) = 1
order by P.SupplierID;
我认为这是正确的,但仍然是猜测。有时候,一个专栏会被“使用”而不是这个名字。那是做什么的?对于group by子句(供应商ID)生成的每个组,它将确定Discontinued的最小值(因为您不能使用min / max with bit)所以需要进行转换。对于包含所有已停产产品的供应商,对于所有关联行,该列必须为1。因为1> 0,这意味着供应商的所有产品都已停产。分组还为我们提供了一组独特的行。
现在您已了解如何生成一组不同的SupplierID值,您应该能够将其应用于任何其他查询以获取有关这些供应商的信息。您可以加入,使用IN,使用存在 - 如果您想真正使这成为一种学习体验,请尝试所有三种。