Oracle sélectionnez avec sous-requête
Pourriez-vous s'il vous plaît aidez-moi avec prochain oracle sql de la requête.
SELECT "NEWS"."NEWSID" as ID,
"NEWS"."SLUG",
"NEWS_TRANSLATION".*,
(SELECT FILENAME FROM NEWS_MEDIA WHERE NEWSID = ID AND rownum <= 1 ORDER BY POSITION ASC) as FILENAME
FROM "NEWS"
INNER JOIN "NEWS_TRANSLATION" ON NEWS.NEWSID = NEWS_TRANSLATION.NEWSID
WHERE (NEWS.PUBLISH = 1) AND (NEWS_TRANSLATION.LANG = :lang)
ORDER BY "NEWS"."NEWSID" DESC;
Lorsque j'exécute cette requête, j'ai l'erreur
ORA-00907: missing right parenthesis
00907. 00000 - "missing right parenthesis"
*Cause:
*Action:
Error at Line: 4 Column: 74
Si l'intention est d'obtenir le nom de fichier de la position MIN, pour un point de presse à partir de news_media, je ne pense pas que rownum est utilisé correctement. Le "ORDER BY" est appliqué après un enregistrement est sélectionné. Il faudrait subqueried ou, mieux encore, jointes séparément avec MIN(position). Voir oracle.com/technetwork/issue-archive/2006/06-sep/...
OriginalL'auteur rtyshyk | 2012-08-03
Vous devez vous connecter pour publier un commentaire.
Essayez ceci:
Lorsque vous êtes à l'aide de "l'ordre" et "rownum" ensemble, vous devez d'abord les commander et de regarder pour le premier enregistrement.
OriginalL'auteur Birupakhya Dash
S'il vous plaît essayer en supprimant la clause order by dans la sous-requête.
SÉLECTIONNEZ le nom de fichier DE NEWS_MEDIA OÙ NEWSID = ID ET rownum <= 1; je ne suis pas sûr que le nom de la colonne ID, s'il vous plaît confirmer.
OriginalL'auteur TechDo
Ici est le travail code:
Error at Line: 4 Column: 51
J'ai changé l'ID de NEWS.NEWSID dans la sous-requête et toutes les bonnes œuvres. Mais comment je peux le faire avec ORDRE?
Que voulez-vous montrer par
order by
? Est-ilORDER BY POSITION ASC
partie comme dans votre question?Chaque fichier de la position et je veux obtenir le fichier où est la position de la première. Je peux écrire quelque chose comme
WHERE POSITION = 1
, mais je ne peux pas être sûr que le fichier existe à la position, à 1, c'est pourquoi jeORDER BY
clauseOriginalL'auteur Mistu4u
Essayez Ceci:
Je réponds à votre question ici, stackoverflow.com/questions/11794242/...
Ma question est: Quel est le but de tri dans la sous-requête?
OriginalL'auteur hmmftg
OriginalL'auteur raja