Sql数据库换成Access数据库后,查询语句出错

ygxxzbz 2010-10-13 06:37:01
如下语句,Sql数据库换成Access数据库后,查询语句出错(Access不支持SUBSTRING)。SUBSTRING改成mid或left也不行。

SQL = "SELECT province.AreaName AS sheng, city.AreaName AS shi, town.AreaName AS xian, Table1.* "
SQL = SQL & " FROM Table1 "
SQL = SQL & " INNER JOIN AreaInfo AS province ON province.AreaID = SUBSTRING(Table1.ReportArea, 1, 2) + '0000'"
SQL = SQL & " INNER JOIN AreaInfo AS city ON city.AreaID = SUBSTRING(Table1.ReportArea, 1, 4) + '00'"
SQL = SQL & " INNER JOIN AreaInfo AS town ON town.AreaID = Table1.ReportArea"
SQL = SQL & " INNER JOIN ElementInfo ON Table1.ReportID = ElementInfo.ReportID AND "
SQL = SQL & " Table1.ElementName = ElementInfo.ElementName"
SQL = SQL & " WHERE (Table1.ReportID = '" & BCBiao & "')"
...全文
223 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ygxxzbz 2010-10-14
  • 打赏
  • 举报
回复
原数据库是这样的:与本咨询有关的主要有两个表。表A结构及部分数据如下

AreaID AreaName
130000 河北省
130100 石家庄市
130101 市辖区
130102 长安区
130103 桥东区
130123 正定县
130124 栾城县
130125 行唐县

表B部分结构及数据如下
ReportArea
130123
130103
130125
130125

我想根据表A,从表B中得到如下查询结果
省 市 县
河北省 石家庄市 正定县
河北省 石家庄市 桥东区
河北省 石家庄市 行唐县
河北省 石家庄市 行唐县

ygxxzbz 2010-10-14
  • 打赏
  • 举报
回复
希望各位高手提出意见
ygxxzbz 2010-10-13
  • 打赏
  • 举报
回复
建用SQLite是什么意思,不明白
Sweet-Tang 2010-10-13
  • 打赏
  • 举报
回复
数据库不一样
语法也不一样
建用SQLite
ygxxzbz 2010-10-13
  • 打赏
  • 举报
回复
如果province.AreaID = left(Table1.ReportArea, 2) + '0000'

提示错误:不能在Memo、OLE或超级链接对象(Province.AreaID=LEFT(Report1.ReportArea,2)+'0000')中连接。
ygxxzbz 2010-10-13
  • 打赏
  • 举报
回复
SUBSTRING改成mid或left也不行。
饮水需思源 2010-10-13
  • 打赏
  • 举报
回复
province.AreaID = left(Table1.ReportArea, 2) + '0000'

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧