Που είναι το λάθος?

Συζητήσεις για την βάση δεδομένων MySQL και το phpMyAdmin

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
Kostas Vel
Δημοσιεύσεις: 10
Εγγραφή: 21 Ιουν 2011 13:54

Που είναι το λάθος?

Δημοσίευση από Kostas Vel » 08 Οκτ 2012 10:04

Γεια σας,
εχω μία δυσκολια στη mysql που είναι η εξής. Εκτελώ ένα query με δύο διαφορετικούς τρόπους (που μάλλον είναι ίδιοι) κ μου φέρνει διαφορετικά αποτελέσματα.
το πρώτο που είναι κ σωστό:
select ua.Email from interest i
join useraccount ua on i.UserAccountId = ua.Id
where i.SystemId = 'goldendeals.gr'
and i.StatusCode in (301, 302, 312)
and (select systemId from newslettersubscription where EmailAddress =ua.email order by SubscriptionDate asc limit 1) = 'Kati1.gr';

και το δεύτερο που έχει ένα μικρό λάθος μάλλον:
Α.
select ns.EmailAddress,
( select systemId from newslettersubscription where EmailAddress =ua.email order by SubscriptionDate asc limit 1) as buyerSystem
from useraccount ua
join newslettersubscription ns on ns.EmailAddress=ua.Email and ns.SystemId = ua.SystemId
where ua.systemId='Kati1.gr' ;

Β.
select ua.Email from useraccount ua
join interest i on ua.Id = i.UserAccountId
where i.StatusCode in (302,301,312) and ua.SystemId='Kati2.gr'
and ua.Email in (
'skepsys@otenet.gr',
'kalliantra79@yahoo.gr',
'tychwn@hotmail.com',
'panvas85@hotmail.com',
...
'eblatsiou@yahoo.gr');

στο δευτερο εκτελώ το Α. query και μετά το Β.

Μήπως κάποιος έχει καμιά ιδέα τι ακριβώς φταιει?
Ευχαριστώ

Απάντηση

Επιστροφή στο “MySQL”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες