0

我刚刚进入SQL。小迷糊吃了以下。也许你可以帮忙。此查询有效

SELECT topics.topic FROM topics 
LEFT JOIN daybook 
ON topics.topic_id = daybook.topic_id
WHERE daybook.daybook_id = 7

这个查询失败的地方

SELECT topics.topic FROM topics 
LEFT JOIN daybook 
ON topics.topic_id = daybook.topic_id
WHERE daybook.test = “test text”

我不明白为什么。daybook.test 是一个字符串字段。它正在传递一个字符串。如果写作没有改善,我已经尝试了所有品种。你能帮我吗?

谢谢G

4

2 回答 2

1

使用单引号而不是双引号来分隔 SQL 字符串文字。换句话说,在这种情况下使用“测试文本”。

于 2012-08-19T16:02:32.493 回答
0

像这样“测试文本”使用单引号

SELECT topics.topic FROM topics 
LEFT JOIN daybook 
ON topics.topic_id = daybook.topic_id
WHERE daybook.test = 'test text';

重要的:

您必须在 sql/mysql 中的 varchar 值周围使用 ''(单引号)。但是,在 int 的情况下,查询的工作方式与单引号和不带单引号相同

原因:

如果您不在 varchar 周围使用 '' 您的查询会将其作为变量。所以给出错误

于 2012-08-19T16:12:13.367 回答