gpt4 book ai didi

mysql - 完全 JOIN MySQL 查询返回空

转载 作者:太空宇宙 更新时间:2023-11-03 12:20:04 26 4
gpt4 key购买 nike

所以这是一个 MySQL 查询:

SELECT TestSite . * , LoggedCarts . * 
FROM TestSite, LoggedCarts
WHERE TestSite.email = 'LoggedCarts.Bill-Email'
LIMIT 0 , 30

它返回一个空结果集,而根据下表,它应该返回四个结果。

第一个表:LoggedCarts - 列:Bill-Email

casedilla@hotmail.com
crazyandy@theholeintheground.com

第二个表:TestSite - 列:电子邮件

samuel@lipsum.com
taco@flavoredkisses.com
honeybadger@dontcare.com
casedilla@hotmail.com
messingwith@sasquatch.com

目标是获取一个 MySQL 语句,该语句返回表:TestSite 中与表:LoggedCarts 中的行不匹配的行。

注意:据我所知,在构建查询时,在列名中使用连字符需要特别小心,涉及反引号以告诉 MySQL 有特殊字符。我会更改列名称以匹配,但是表:LoggedCarts 的数据是通过 Yahoo 购物车的邮寄方式提供的,并且在插入之前没有进行大量准备就将名称设置为除了邮寄数据中发送的 key 之外的任何内容是令人生畏的。

但是,如果事实证明在插入之前重建数据比使用 JOIN 语句更容易,或者由于某种原因使用两个具有不同名称的列作为比较列不起作用,我将通过并重建数据库和 PHP 代码。

最佳答案

单引号表示字符串文字。您需要对标识符使用反引号。此外,标识符的每个组成部分都必须单独引用。

SELECT TestSite . * , LoggedCarts . * 
FROM TestSite, LoggedCarts
WHERE TestSite.email = LoggedCarts.`Bill-Email`
LIMIT 0 , 30

来自 the manual :

If any components of a multiple-part name require quoting, quote them individually rather than quoting the name as a whole. For example, write `my-table`.`my-column`, not `my-table.my-column`.

关于mysql - 完全 JOIN MySQL 查询返回空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20528876/

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