in order clause is ambiguous

Der MySQL Datenbank-Server für Internet- und Intranet-Lösungen.

in order clause is ambiguous

Beitragvon paddy » Sa 14 Sep, 2002 21:10

<HTML>Hi!

Hat jemand einen Rat fĂĽr mich?
[14.08.2002 20:51:52] [error] Bad query: INSERT INTO tmp2
SELECT HIGH_PRIORITY
tmp1.URL,
tmp1.pageDate,
tmp1.expiresDate,
tmp1.title,
tmp1.description,
tmp1.keywords,
tmp1.author,
tmp1.replyTo,
tmp1.publisher,
tmp1.copyright,
tmp1.contentLanguage,
tmp1.pageTopic,
tmp1.pageType,
tmp1.abstract,
tmp1.classification,
tmp1.body_1,
tmp1.body_2,
tmp1.expiresFlag,
tmp1.RelevanceUrl + tmp0.RelevanceUrl,
tmp1.RelevancePUrl + tmp0.RelevancePUrl,
tmp1.RelevanceTitle + tmp0.RelevanceTitle,
tmp1.RelevanceBody + tmp0.RelevanceBody
FROM tmp1, tmp0
WHERE tmp1.URL = tmp0.URL
ORDER BY RelevanceUrl DESC, RelevancePUrl ASC, CHARACTER_LENGTH(URL) ASC, RelevanceTitle DESC, RelevanceBody DESC => (Column: 'RelevanceUrl' in order clause is ambiguous)

Ist MySQL 3.23.44.

Danke!
</HTML>
paddy
 

RE: in order clause is ambiguous

Beitragvon mad » Mo 16 Sep, 2002 18:20

<HTML>steht eh in der fehlermeldung ... 'RelevanceUrl' in order clause is ambiguous

RelevanceUrl alleine ist fuer die datenbank nicht eindeutig,
da weiss sie nicht ob sie nach tmp0.RelevanceUrl oder tmp1.RelevanceUrl sortieren soll.

also entweder explizit beim "order by" mit dem tmp0 oder tmp1 angeben,
oder, falls du nach dem ergebnis von " tmp1.RelevanceUrl + tmp0.RelevanceUrl" sortieren willst

[koennte gehn, muss aber nicht .. hab ich naemlich nicht probiert]

vorne ein "(tmp1.RelevanceUrl + tmp0.RelevanceUrl) as rel_url" reinfummeln
und beim order by aus dem RelevanceUrl ein rel_url draus machen

[/koennte gehn]

hth,
mad.
</HTML>
mad
 


ZurĂĽck zu MySQL

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 13 Gäste