【问题标题】:How can I fix a where clause如何修复 where 子句
【发布时间】:2019-03-26 22:33:58
【问题描述】:

我有 2 张桌子、产品和图片。我想要做的是从产品表中选择条件(产品表的列)为“已使用”的所有产品,并使用产品名称(产品和图像表的列-外键)进行内部连接图像。

我尝试过使用全选、内联和 where 子句。

(
"SELECT * FROM  `products` p " 
   where condition="used"

 + "INNER JOIN  `images` i "
 + "USING (  `product-name` ) "
         
)

【问题讨论】:

  • 那是什么??? INNER JOIN 和 USING 之前的括号,双引号,黑色的东西是什么。你期望它如何工作?你有没有查看 MySQL 文档如何创建查询?
  • @Eric 说得好。同样product-name 等于product 减去name。欢迎来到 SO@s.am.i。准确的问题会得到更好的回答,不要拖延,继续提问,但要提高清晰度。
  • 对错误感到抱歉...括号是因为我在 if 语句中使用它..那个黑色的东西是 + 我把它输入为 + 但它显示为黑色的东西

标签: mysql sql where-clause


【解决方案1】:

当您遇到语法错误时,请咨询manual on SELECTWHERE 子句出现在 JOIN 之后,例如:

SELECT * FROM products p
INNER JOIN images i USING ( `product-name` )
WHERE condition="used"

【讨论】:

    【解决方案2】:

    这里的内连接链接了“products”和“images”这两个表。在 ON 子句中,条件“products.product-name = images.product-name”定义了两个表应如何相互连接(在产品名称上)。

    SELECT * FROM products
    INNER JOIN images
    ON products.product-name = images.product-name
    WHERE condition = 'used' 
    

    【讨论】:

    • 请编辑您的答案并添加一些评论来解释您的代码。不要期望每个人都能理解您发布的内容。解释是关键。
    猜你喜欢
    • 2017-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-01
    • 2019-12-19
    • 2019-08-16
    相关资源
    最近更新 更多