Sql 输入行214结尾的语法错误:o.MatchAdded DESC^
我正试图加入动物收容所数据库中的两个查询,以便将狗的资料与潜在的收养者进行匹配。我一直收到一条错误消息(输入行214:o.MatchAdded DESC^末尾的语法错误),我不明白为什么它在其他地方都能工作,但它却不能工作 我已经挑出了每一个问题(狗方面,申请人方面),他们的工作。我使用这个查询只匹配了1个规范,它是有效的Sql 输入行214结尾的语法错误:o.MatchAdded DESC^,sql,Sql,我正试图加入动物收容所数据库中的两个查询,以便将狗的资料与潜在的收养者进行匹配。我一直收到一条错误消息(输入行214:o.MatchAdded DESC^末尾的语法错误),我不明白为什么它在其他地方都能工作,但它却不能工作 我已经挑出了每一个问题(狗方面,申请人方面),他们的工作。我使用这个查询只匹配了1个规范,它是有效的 SELECT a.sheltercode, a.animalname, a.animalage, (
SELECT a.sheltercode,
a.animalname,
a.animalage,
(
SELECT sex
FROM lksex
WHERE id = a.sex) AS sex,
(
SELECT size
FROM lksize
WHERE id = a.size) AS size,
(
SELECT basecolour
FROM basecolour
WHERE id = a.basecolourid) AS color,
s.speciesname,
a.breedname,
(
SELECT NAME
FROM lksynun
WHERE id = a.isgoodwithcats) AS goodwithcats,
(
SELECT NAME
FROM lksynun
WHERE id = a.isgoodwithdogs) AS goodwithdogs,
(
SELECT NAME
FROM lksynun
WHERE id = a.isgoodwithchildren) AS goodwithchildren,
(
SELECT NAME
FROM lksynun
WHERE id = a.ishousetrained) AS housetrained,
(
SELECT animaltype
FROM animaltype
WHERE id = matchanimaltype) AS animaltype,
(
SELECT speciesname
FROM species
WHERE id =matchspecies) AS species,
(
SELECT breedname
FROM breed
WHERE id = matchbreed)AS breed,
(
SELECT breedname
FROM breed
WHERE id = matchbreed2) AS orbreed,
(
SELECT NAME
FROM lksynun
WHERE id = matchgoodwithcats) AS goodwithcats,
(
SELECT NAME
FROM lksynun
WHERE id = matchgoodwithdogs) AS goodwithdogs,
(
SELECT NAME
FROM lksynun
WHERE id = matchgoodwithchildren) AS goodwithchildren,
(
SELECT NAME
FROM lksynun
WHERE id = matchhousetrained) AS housetrained,
(
SELECT o.ownername,
o.owneraddress,
o.hometelephone,
o.worktelephone,
o.mobiletelephone,
o.matchadded,
matchcommentscontain,
homecheckareas,
additionalflags,
(
SELECT af.value
FROM additional af
INNER JOIN additionalfield aff
ON aff.id = af.additionalfieldid
WHERE aff.fieldname = 'ApplicantDogRestricted'
AND af.linkid = owner.id) AS applicantdogrestricted,
(
SELECT af.value
FROM additional af
INNER JOIN additionalfield aff
ON aff.id = af.additionalfieldid
WHERE aff.fieldname = 'ApplicantDogHighEnergy'
AND af.linkid = owner.id) AS applicantdoghighenergy,
(
SELECT af.value
FROM additional af
INNER JOIN additionalfield aff
ON aff.id = af.additionalfieldid
WHERE aff.fieldname = 'ApplicantDogPuppy'
AND af.linkid = owner.id) AS applicantdogpuppy,
(
SELECT af.value
FROM additional af
INNER JOIN additionalfield aff
ON aff.id = af.additionalfieldid
WHERE aff.fieldname = 'ApplicantWeightRestriction'
AND af.linkid = owner.id) AS applicantweightrestriction,
createdby
FROM owner
WHERE matchactive = '1'
AND matchspecies = '1'
AND idcheck = '1'
AND additionalflags NOT LIKE '%Fosterer-Dog%'
ORDER BY o.matchadded DESC
我希望查询结果会是一份报告,按申请日期按降序列出申请者。中间有数据,但最后一列应该是满足搜索请求的狗的列表。您错过了所有者的别名。在owner之后添加
o
,对于其他表,如a、s
等,将其命名为别名
别名允许您在同一查询中多次使用表/列时区分表的名称。什么是o
(除其他外,o.matchadded
)?您没有从表o
中进行选择,也没有名为o
的表、别名或子查询。与a
和s
相同。