[]
Sql sorusu
Gece gece aklıma takıldı farazi soruyorum önümde bilgisayar yok.
Elimizde e-mail adreslerinin tutulduğu maillist tablosu var diyelim.
Kolonlar: tc, email, onaylı(0,1)
Bir kişiye ait Sınırsız e mail olabilir tabloda. Onaylı olanlar için onaylı kolonu 1 olacak, onaysızsa 0. Benim amacım en az 1 onaylı 1 onaysız e mail adresi olan tcleri ve onlara ait mailleri listelemek.
Select * from maillist where onaylı=1 and onaylı=0 çalışmaz. Nasıl bulunur bu kişiler bu tabloda?
Elimizde e-mail adreslerinin tutulduğu maillist tablosu var diyelim.
Kolonlar: tc, email, onaylı(0,1)
Bir kişiye ait Sınırsız e mail olabilir tabloda. Onaylı olanlar için onaylı kolonu 1 olacak, onaysızsa 0. Benim amacım en az 1 onaylı 1 onaysız e mail adresi olan tcleri ve onlara ait mailleri listelemek.
Select * from maillist where onaylı=1 and onaylı=0 çalışmaz. Nasıl bulunur bu kişiler bu tabloda?
where table name="onayli"
- nibba (16.03.21 00:36:04)
Hocam kolonun ismini onayli yerine onaylı yazmamı mı uyarmak içindi anlamadım. Bu sorgu bana en az 1 onaylı 1 onaysız mail adresi olan adamları verir mi şimdi?
- cilekli pasta (16.03.21 00:48:46)
2 tane onayli veya iki tane onaysiz mail olma ihtimali var mi? 2 onayli 1 onaysiz, veya 2 onaysiz 1 onayli durumlarini da istiyor musun?
- fakyoras (16.03.21 00:56:13 ~ 00:56:48)
- plutongezegendegilmi (16.03.21 00:56:21)
Sql ile çok az uğraşmıştım ama join ile olmaz mı?
- kisa (16.03.21 01:02:03)
yok hocam ne uyarmasi
degerler degisik oldugu zaman boyle yapiyordum ben
en azindan boyle hatirliyorum 15 sene gecti sql kullanali
dusundum de where column name de olabilir o :pp
degerler degisik oldugu zaman boyle yapiyordum ben
en azindan boyle hatirliyorum 15 sene gecti sql kullanali
dusundum de where column name de olabilir o :pp
- nibba (16.03.21 02:04:27 ~ 02:15:00)
@pluton+1
Tcye göre gruplayip daha sonra da onaylı maillere göre koşul yazmak gerek. Şöyle bişey olur sanırım
Select tc from maillist group by tc having count(distinct onaylı)>1
Tcye göre gruplayip daha sonra da onaylı maillere göre koşul yazmak gerek. Şöyle bişey olur sanırım
Select tc from maillist group by tc having count(distinct onaylı)>1
- j r r tolkien hayrani (16.03.21 02:34:28)
@fakyoras 5 onaylı 1 onaysız maili de olabilir aynen iki gruptan da maili varsa döksün istiyorum ne var ne yok
@kisa tek tablo zaten join olmaz malesef
Having çözecek bu işi görünüyor sabah uygulamasını yapayım herkese emekleri için teşekkürler
@kisa tek tablo zaten join olmaz malesef
Having çözecek bu işi görünüyor sabah uygulamasını yapayım herkese emekleri için teşekkürler
- cilekli pasta (16.03.21 07:48:36)
ben join having vs sevmedipim için şöyle yapıyprum
select xxxx from where tc in
(select tc from onaylı count > 1)
and
bu biraz içiçeolur zorlar veya exists li var. exists de severim ama best practice şu olsa gerek
SELECT DISTINCT
a.ProductId
FROM
cilek a,
cilek b
WHERE a.tc = b.tc
AND a.onayli= 1
AND b.onayli= 2;
select xxxx from where tc in
(select tc from onaylı count > 1)
and
bu biraz içiçeolur zorlar veya exists li var. exists de severim ama best practice şu olsa gerek
SELECT DISTINCT
a.ProductId
FROM
cilek a,
cilek b
WHERE a.tc = b.tc
AND a.onayli= 1
AND b.onayli= 2;
- ShadowOfMoon (16.03.21 23:54:16)
1