Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] unikalność rekordów
Forum PHP.pl > Forum > Przedszkole
meehow18
Mam następującą strukturę tabel.
`mailing`
id|lista|id_mailing

`subskrybenci`
id_autorespondera|email

Użytkownik wypełnia formularz (check listę) i ile pól zaznaczy tyle zostanie dodanych rekordów do bazy mailing.

Np. dodaję sobie tabelę mailing, gdzie ma ona rekordy 3

id(autoinc)|lista|id_mailing|
1 | 2| 3 |
2 | 4 |5 |
3 | 8 |5 |

Następnie sprawdzana jest tabela subskrybenci, gdzie lista=id_autorespondera i zależy mi na zliczeniu unikalnej liczby rekordu email. Jeżeli e-mail występuje wielokrotnie dla wybranych id_autorespondera ma zostać policzony tylko 1 raz.

Z góry dziękuje za pomoc.
fragov
http://www.w3schools.com/sql/sql_distinct.asp
meehow18
okey, distinct zadziała mi w takim przypadku:


a mi zależy aby jeszcze zadziałało w takim:


zapytanie do bazy

  1. function add_subskrybent($id_mailing,$ile,$max)
  2. {
  3.  
  4. foreach ( $this->crud_model->select('id_mailing',$id_mailing,'mailing') as $r)
  5. {
  6. $lista = $r->lista;
  7. $this->db->or_where('id_autorespondera',$r->lista );
  8. }
  9.  
  10. $this->db->select('email_zapisanego, id_autorespondera,status,id');
  11. $this->db->order_by("email_zapisanego", "asc");
  12. $this->db->distinct();
  13. $this->db->limit($ile,$max);
  14. $qw = $this->db->get_where('subskrybenci',array('status'=>1));
  15. return $qw->result();
  16.  
  17. }


Jakieś pomysły?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.