mysql - SQL 修剪语法错误

标签 mysql sql syntax-error trim

我刚刚读完《SAM 的 24 小时自学 SQL》一书,我的任务是列出我们的事件站点的“site_code”与其各自的“site_path”与前缀“/var”相匹配/www/html' 已删除。在过去的一个小时左右的时间里,我一直在试图找出自己做错了什么,并且不知道此时还可以尝试什么。

这是我到目前为止所得到的:

SELECT site_name FROM example_tbl
WHERE active = 1
AND site_code IN
(SELECT TRIM(LEADING '/var/www/html/' FROM site_path) FROM example_tbl;);

尝试运行这给了我这个:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1

我在 Ubuntu 14.10 版本上使用 Mysql 版本 14.14 Dustrib 5.5.38

嵌套查询本身可以正常工作,如果我删除“AND”之后的所有内容,第一部分也可以正常工作,所以我不确定为什么它们不能一起工作:\

任何帮助将不胜感激!

编辑: 抱歉,我应该更具体一点! 'site_code'、'site_path' 和 'site_name' 都是表 'example_tbl' 中的列,我正在尝试获取一个列表网站名称来打印,如下所示

输入:/var/www/html/example.company.com 输出:example.example.com

编辑2: 哦,对于上面的例子: “site_name”将是:example.company.com “site_code”将是:示例 “site_path”将是:/var/www/html/example.company.com

最佳答案

删除多余的分号。

SELECT site_name FROM example_tbl
WHERE active = 1
AND site_code IN
(SELECT TRIM(LEADING '/var/www/html/' FROM site_path) FROM example_tbl);

关于mysql - SQL 修剪语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29023899/

相关文章:

mysql - 从单机运行分片数据库

php - MySQL 左连接,SQL 语法错误

sql-server - SQL 错误 : Incorrect syntax near the keyword 'End'

mysql 时间到日期转换获取空值

javascript - AJAX 到 PHP 到 mySQL 调试

php - 通过 php 将查询字符串发布到 mysql,而不是将链接放在地址栏中

sql - PL SQL Oracle PLS-00103 : Encountered the symbol “CREATE”

java - SQL 语法错误

sql - 当月末是周中时如何提取周结束日期和月末

vb.net - OleDbCommandBuilder 生成的 INSERT INTO 语句中存在语法错误