none
sql de left join hakkında bir soru

    Soru

  • iki tablo var aralarında left join var mesela firmalar ve kişiler tablolarında left join ile firmanın kişilerini görüyoruz normal olarak. Peki ben firmanın kişilerini görüyorum ama firmalar listesinde hiç kişi kaydı olmayan firmaları nasıl listelerim sql ile. Burada bir önemli şey right join önermeyiniz lütfen zira sqlite kullanıyorum onda sadece left i destekliyor. Aklıma gruplayıp kisiler tablosunu saydırmak sıfır olanları seçmek geliyor 

    • Düzenleyen hakan1992 18 Mayıs 2019 Cumartesi 22:42
    18 Mayıs 2019 Cumartesi 22:38

Yanıtlar

  • Basit degil, zor olmuş ve de gereksiz. Basit halleri (3 yöntem):

    SELECT Firmalar.Kimlik, Firmalar.FirmaAdi
    FROM Firmalar 
    LEFT JOIN Kisiler ON Firmalar.Kimlik = Kisiler.FirmaKimlik
    where Kisiler.FirmaKimlik is NULL;

    SELECT Kimlik, FirmaAdi
    FROM Firmalar
    where Kimlik NOT IN 
    (select FirmaKimlik from kisiler);
    

    SELECT Kimlik, FirmaAdi
    FROM Firmalar f
    where Not exists  
    (select * from kisiler k where f.Kimlik = k.FirmaKimlik);



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    • Yanıt Olarak İşaretleyen hakan1992 21 Mayıs 2019 Salı 02:22
    21 Mayıs 2019 Salı 00:59
    Yanıtlayıcı
  • Attach sözcüğü ile diğer sqlite veritabanlarını sorguda kullanabilirsiniz. 

    www.cihanyakar.com

    • Yanıt Olarak İşaretleyen hakan1992 23 Mayıs 2019 Perşembe 00:45
    22 Mayıs 2019 Çarşamba 07:12
  • Ben ne demek istediğini anlamıyorum aslinda. Ya uzun bir sekilde access'i ya da Microsoft'un hayal kirikliklarindan bir digeri LightSwitch'i tarif ediyorsun. Ya da aslinda basitçe demek istediğin ad-hoc query dediğimiz sey. Yoksa VFP'nin application wizardini mi tarif ediyorsun bilemedim.

    "En iyileri bunlarsa" ... derken, dogrusu onlarin hepsini ben de bilmiyorum ama bildiklerim icin sen bu yorumu yapabiliyorsan, zaten asmissin, burada baskasinin fikrini sormana ihtiyacın yok. Ben de kendimce birseyler yaptım ama yukarıdakilere "en iyileri bunlarsa ..." yakistirmasi yapabiliyorsan, benimkini yerden yere vurursun:)




    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:43
    27 Mayıs 2019 Pazartesi 14:53
    Yanıtlayıcı
  • .

    @ÇetinBasoz abi Lightswitch'i geliştirme yapmayı kessek de hâlâ kullanıyoruz. Efsaneydi gerçekten. Ama Microsoft sanırım efsaneleri sevmiyor :) En son kendine Sharepoint içinde yer buldu sanırım. Ama takip etmedim o kısımları.


    www.cihanyakar.com


    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:43
    • Düzenleyen Cihan Yakar 29 Mayıs 2019 Çarşamba 10:02
    27 Mayıs 2019 Pazartesi 15:10
  • Senin girmeye çalıştığın model B2B ise kiralanan şey yazılım değil! Hizmet!  Bunu kaçırdığın sürece olmayacak bu iş ben söyleyeyim. 


    www.cihanyakar.com





    • Düzenleyen Cihan Yakar 27 Mayıs 2019 Pazartesi 18:45
    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:42
    27 Mayıs 2019 Pazartesi 18:41
  • "Bilgisayarlarında gerçek bir program kullanmaları lazım güne başlarken bildiğin % 100 o işe özel üretilmiş gibi program açıp kayıt yapmaları lazım."

    Tamam iste aynen bu cümledeki yazildigi gibi olur ama icinden "gibi" kelimesini cikarmalisin. Ben ornegin ise özel yazılım geliştiriyorum, sabahtan aksama o programdalar. Kotu yani, senin programınla ilgisi olsun olmasın hersey senden biliyorlar, çünkü tek kullandıkları senin programın.

    "Hangi patron ..." - birçok patron. O firmaların verilerin korunması hakkında ciddi taahhütleri var (yurt disindaki adalet sisteminin koruması altında yani guvenilir). Yine de bu konuda tartışmaya girmem, her koyun kendi bacağından asılır, ben guvensem de, sen güvenme. Adamlar bırak datalarını vermeyi, o datanın yedeklenmesi, dagitilmasi ... konusunda ciddi paralar oduyorlar. Bir de, senin muhasebe verini o firmalar ne yapsın, açık versen ilgilenmezler.

    Bir baska nokta, internet tabanli olmaktan kastın "browser based" olsa gerek. Onun icin internete gerek yok. Bir ofisteki internete bağlı olmayan, tek makinede de calisir, bir makine "server" gorevini üstlenerek N tane lokal agdaki makinede de. Isin icine VPN ya da socket programming koyarsın, WAN\LAN karisimi N tane ofis lokasyonunda da guvenle calisirsin.




    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:42
    27 Mayıs 2019 Pazartesi 18:41
    Yanıtlayıcı

Tüm Yanıtlar

  • Tüm left joinleri right, right'ları left olarak yazabilirsin. Biraz konuyu araştırmanı öneririm.

    www.cihanyakar.com


    19 Mayıs 2019 Pazar 14:03
  • Right join yapabilmek icin right join desteklemesine gerek yok ki. Zaten sizin sorguda right join'e de ihtiyacınız yok.

    Left/Right join su sekilde calisiyor:

    select ... from LeftTable < Left\Right\... > join RightTable

    Yani:

    Select * from Firmalar Left Join Kisiler On ...

    derseniz Firmalar (left table). Bunu right join yapmak icin yerlerini değiştirmekteyim yeterli:

    Select * from Kisiler Left Join Firmalar On ...

    Ihtiyaciniz olan:

    Select * 
    from Firmalar 
    Left Join Kisiler On ...
    

    Bu sekilde, bir firmada calismayan ve kisiler tablosunda olanları alamazsınız ama tum firmaları ve kisilerini alirsiniz. Eger ihtiyacınız  her iki tablodan da hepsini alabilmek ise (Firmasi olmayan kisler ve kişisi olmayan firmalar dahil) o zaman FULL JOIN gerekiyor ve SQLite desteklemiyor. FULL JOIN'i, LEFT JOIN ve UNION kullanarak taklit edebilirsiniz. Ancak o durumda bir ara "köprü" tablonuz vardır (many-to-many).

    Not: Tavsiyem veritabanı gerektiren program yazmaya baslamadan once, veritabanlarını öğrenmeye vakit ayırmanız.

     

     



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    20 Mayıs 2019 Pazartesi 12:16
    Yanıtlayıcı
  • çok basit yaptım kişiler tablosunu gruplayıp saydırıyorum sıfır olanları seçiyorum böylece kişisi olmayan firmalar listeleniyor

    SELECT Firmalar.Kimlik, Firmalar.FirmaAdi, Count(Kisiler.Kimlik) AS SayKimlik
    FROM Firmalar LEFT JOIN Kisiler ON Firmalar.Kimlik = Kisiler.FirmaKimlik
    GROUP BY Firmalar.Kimlik, Firmalar.FirmaAdi
    HAVING Count(Kisiler.Kimlik)=0

    • Düzenleyen hakan1992 20 Mayıs 2019 Pazartesi 20:09
    20 Mayıs 2019 Pazartesi 19:57
  • Basit degil, zor olmuş ve de gereksiz. Basit halleri (3 yöntem):

    SELECT Firmalar.Kimlik, Firmalar.FirmaAdi
    FROM Firmalar 
    LEFT JOIN Kisiler ON Firmalar.Kimlik = Kisiler.FirmaKimlik
    where Kisiler.FirmaKimlik is NULL;

    SELECT Kimlik, FirmaAdi
    FROM Firmalar
    where Kimlik NOT IN 
    (select FirmaKimlik from kisiler);
    

    SELECT Kimlik, FirmaAdi
    FROM Firmalar f
    where Not exists  
    (select * from kisiler k where f.Kimlik = k.FirmaKimlik);



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    • Yanıt Olarak İşaretleyen hakan1992 21 Mayıs 2019 Salı 02:22
    21 Mayıs 2019 Salı 00:59
    Yanıtlayıcı
  • teşekkür ederim böyle daha mantıklı gerçektende 

    üçünüde denedim doğrular ama ilk örneği anladımda diğer ikisi biraz karışık geldi  


    • Düzenleyen hakan1992 21 Mayıs 2019 Salı 02:27
    21 Mayıs 2019 Salı 02:26
  • teşekkür ederim böyle daha mantıklı gerçektende 

    üçünüde denedim doğrular ama ilk örneği anladımda diğer ikisi biraz karışık geldi  


    "Bence" aslında 1.si en zoru çünkü "left join...on" (sola katıl...dan) bu pek İngilizce değil! terimin ne işe yaradığını bilmiyorsan anlaman mümkün değil diğerlerinde ise "where X not in y" (X değeri Y ler içinde değilse) veya "where not exist" (Y var değilse ) ne yapmaya çalıştığını İngilizce bilen birine açıklıyor.


    www.cihanyakar.com




    21 Mayıs 2019 Salı 10:22
  • SQLite ile birden çok veritabanını sorgularda join ilişkisi ile kullanmak mümkünmüdür. Linq harici. Bende big data yapmak istiyorum doğrudan erişimli veritabanı kullanarak 

    22 Mayıs 2019 Çarşamba 06:12
  • Attach sözcüğü ile diğer sqlite veritabanlarını sorguda kullanabilirsiniz. 

    www.cihanyakar.com

    • Yanıt Olarak İşaretleyen hakan1992 23 Mayıs 2019 Perşembe 00:45
    22 Mayıs 2019 Çarşamba 07:12
  • attach ile digerlerini de kullanirsiniz da, SQLite'in big data ile ilgisini anlayamadim dogrusu.

    Bir de, LEFT JOIN ve diger join tipleri, SQL'in alfabesinde yer alır. Daha alfabe tamamlanmamisken, big data, iddialı cümleler kurmayi hatirlatiyor.

     


    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    22 Mayıs 2019 Çarşamba 10:24
    Yanıtlayıcı
  • projemde bir tane servis programı yaptım veri tabanına tüm kayıt işlemlerini o yapıyor XML olarak istemciye iletiyor. Yani sqlite kullanıyorum ama lokal bir yazılım olarak değil sunucu istemci olarak çok kullanıcılı olarak çalışıyor. Dolayısı ile benim projemde SQLite veri tabanı neredeyse yaptığı iş SQLServer gücünde olması gerekebilir. ağ üzerinde çok kullanıcılı çalışacak ERP gibi MRP gibi filan yani projem. SQLite lokal çalışıyor ama benimki sunucu istemci olarak çalışıyor kendi servis programım var sunucuda ondan dolayı SQLite ın kapasitesini zorlamak istiyorum neler yapabilirim düşünüyorum. Acees di eskiden onla çalışmak daha kolaydı bu açıdan ama kapasitesi kötüydü sen önerdin hatırlamazsın bende SQLite a çevirdim. Çok memnunum SQLite bana SQLserver gibi güçlü geliyor büyük kayıtlarla denedim gayet iyi ama yinede neler yaparım SQLite ı hız ve kayıt büyüklüğü konusunda onu düşünüyorum abi. 
    Big data tabi biraz bana göre big data anlamında dedim 

    Abi bana bir örnek göstersene attach kullanımı hakkında. Bu yolla SQLite da iki database içerisindeki tablolar arasında join ilişkisi ile sorgu çalışırmı yani 

    • Düzenleyen hakan1992 22 Mayıs 2019 Çarşamba 23:46
    22 Mayıs 2019 Çarşamba 23:00
  • Olayı sakin "sen yapamazsın" seklinde alma. 

    SQLite'i ben onermisimdir ama şartları arasında tek kullanıcı filan demisimdir, demedim mi? 

    Kurulum gerektirmeyen, olceklenebilen, çok kullanicili veritabanları da var, ya da kurulumu çok kolay olanlar. Onlari sıralamak pek doğru olmayabilir, kafa karistirir. 

    (Su aralar ben de yogun sekilde SQLite ile calisyorum ama baska bir dilde, ve asil data SQL server'da - SQLite'i lokal cache olarak kullaniyorum)

     

     



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.


    • Düzenleyen CetinBasozEditor 22 Mayıs 2019 Çarşamba 23:35
    • Yanıt Olarak İşaretleyen hakan1992 23 Mayıs 2019 Perşembe 00:45
    • Yanıt İşaretini Geri Alan hakan1992 23 Mayıs 2019 Perşembe 00:46
    22 Mayıs 2019 Çarşamba 23:35
    Yanıtlayıcı
  • Dedin tabi ama ben onu çok kullanıcılı yapmam gerekiyordu bunun için servis programı çalıştırıyorum sunucu pc de onunla haberleşiyor kullanıcı pc ler veriye sadece servis uygulaması erişiyor yani. Sunucu istemci kısmı çok başarılı ama veri tabanı çok büyürse diye endişem var. Bu SQLite ı benim SQLserver dan beklenecek bir performansta zorlamam lazım mümkün olduğu derecede. Yani bir fabrikadaki işletmedeki 50 çalışanın kaydını tutmam gerekebilir SQLite da. Veri desenini iyi hazırlarsam bence olur yani big datacılar bunlarla uğraşıyor zaten Cihan filan yani onlarda SQLServer ı zorluyorlar bende SQLite ı zorlayacağım akıllıca veri deseni kurguları ile. Güzel indexleme filan yapıcam ama önce şu attach ı çözmem lazım bir şeyler sen dedikten sonra baktım örneklere denedim şimdi çalıştıramadım ama. burada benim ana mevzum kolay işletilen kurulan bilgiişlemci istemeyen ama veritabanı anlamında çok güçlü yazılımlar üretmek. Sunucu istemci bile boş klasöre txt dosya yaratarak haberleşiyor mesela XML ler ile sırf port ayarı filan uğraşmamak için  SQLSERVER yada başka Firebirth filan mysql filan onlar hele hiç olmaz bu pratikte abi ben onu demek istiyorum. Benim winzip kadar kolay kurulan ERP filan üretmem lazım bu yüzden sqlite dan mucizeler yaratmam gerekiyor. Fakirin SAP ı gibi bir şey yapmak istiyorum aslında daha açığı. 




    • Düzenleyen hakan1992 23 Mayıs 2019 Perşembe 00:35
    23 Mayıs 2019 Perşembe 00:11
  • tamam oldu galiba şunu denedim çalıştı gerisi kolay artık. Bende diyorum bu SQLite Expert editor programı niye hep sql hazırlarken başına main. koyuyor tablolara bundan demekki koyuyormuş anladım şimdi.

    ATTACH DATABASE 'C:\xxx.eks' AS xx;


    • Düzenleyen hakan1992 23 Mayıs 2019 Perşembe 00:46
    23 Mayıs 2019 Perşembe 00:45
  • Yeni bir soru bu sefer fikrinize danışmak için. Diyelimki benim SQLite veritabanımda 50 tane table var. Ben bunları 50 ayrı database de her birinde bir table oalcak şekilde tutsam ve bir ana SQLite veritabanını ATTACH komutu ile bunları birleştirsem kullansam ne olur sizce. Yani ben ilerde 20 gb filan gibi tek bir veritabanı istemiyorum ondan bunu diyorum
    23 Mayıs 2019 Perşembe 00:57
  • Cihan sana bir soru big data ile uğraşırken order sıralama işlemlerinden kaçınmak gerek dimi mantıken biraz feragat ederek. Ben şimdi kendi programımda order kullanmamayı düşünüyorum sıralama yeteneğini körelticem listelerin bu order ile bu iş ilerde kitlenir kalır 
    • Düzenleyen hakan1992 23 Mayıs 2019 Perşembe 01:16
    23 Mayıs 2019 Perşembe 01:14
  • Nereden başlamalı bilemedim :)

    50 calisan demissin, 50 calisan her database icin (accessi databaseden saymadigimi soylemistim) cerez.

    SQLite icin tek yerine multiple database kullanip attach ile bağlamayı ilk düşünen sen degilsin, bu zaten yapılan bir şey. Tabii ki SQLite dokümanı da bu konuda bazı kisitlamalardan bahsediyor ve uyarılarda bulunuyor. Ornegin Attach edebileceğin database sayısı, varsayılan 10 diye biliyorum, max ise 125. Nasıl değiştirdiğini ise bilmiyorum, umarım kaynaktan derlemen gerekmiyordur (bazı seyler icin compile time diyor, bazı seyler icin ise runtime - hiç değiştirmeye kalkmadim). 

    Sql Server, sqlite, postgreSQL ... i zorlayacağım diye düşünme. Bunları zorlamak pek de kolay degil. Zorlamak icin Mega\Giga degil tera seviyesinde isler yapıyor olman lazım. "veritabanı anlamında çok güçlü" derken, hiç postgreSQL kullanmayi denedin mi? Bir veritabanının "gücü" kavramı tartisilir. Neye gore güçlü? Sakladığı veri miktarı mı? Ne kadar hızlı sorgu, insert, update, delete yaptığına göre mi? Ne kadar esnek geliştirici özellikleri olduğuna göre mi? Ölçeklenebilmesi (senin multiple database bunun basit ve ilkel bir versiyonu)?  SQL dışında bir dille, SP, UDF, trigger ... yazabilmek mi güç? Bu dillerin çeşitli olması? Kullandığın databaseden başka tip bir database'e bağlanabilmek mi? Bu konu o kadar uzun ki. SQL yeteri kadar < güçlü > bulunmadığı için NoSQL serisi databaseler gelişti. Neyse, senin için sonucu sadece senin ihtiyaçların belirler.  

    Fakirin SAP'i demişsin, ben SAP'i öyle ciddi bulanlardan birisi değilim, hatta gereksiz yere bol para akıtılan bir şey olarak görüyorum. Ona akıtılan paranın daha azını bana verseler kesinlikle (ben ve arkadaşlarım) ondan iyi iş çıkarırız diye de iddialı konuşabiliyorum.

    Bu kurulum işlerini genelde çok takıntı haline getirilmesini hiçbir zaman anlayamamışımdır. Örneğin postgreSQL kurulumu, ne olur ki, topu topu 150-200 Mb indirip, çift tıklamaktan ibaret. O kadar problemse docker container hazırlarsınız. Boş vaktinde postgreSQL'i hiç olmazsa şöyle yüzeysel bir şekilde gözden geçir.

    En son sorundaki 50 ayrı database meselesine gelince, daha önce söylediğim gibi limitleri var. Bu zamanın donanımlarıyla, günde 20 Gb yedekleme yapsan ne kadar farkeder, onu da düşün. Tabii bir de şunu düşün: Senin servis, aynı anda birden fazla kişiye hizmet verdiğinde, farklı tablolardan iş istenirse dosya kilitleme nasıl olacak. SQLite'in bu konudaki uyarılarını, güvenli bulduklarını oku. Ben kendi adıma fazla incelemedim, SQLite'i sadece tek kullanıcılı işlemlerde kullanıyorum.

    (Text dosyaları ile mesajlaşma yerine, onu da database ile yapmayı düşünebilirsin) 



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    23 Mayıs 2019 Perşembe 12:50
    Yanıtlayıcı
  • Veri tabanı sunucusu kurması halledilir ama onu işletmek için hem bilgi işlemci desteği gerekiyor hemde satıcının desteği gerekiyor. Portlar DNS ler filan yani asıl sorun orada. Ben SQLite ile mucize yaratmak istiyorum niyetim bu ve umutluyumda. ATTACH da çok işime yarayacak. Bu başlıktan çok istifade ettim teşekkür ederim hepinize. 
    23 Mayıs 2019 Perşembe 21:04
  • postgreSQL kurarsan, nasıl bir bilgi islemci destegi gerekiyor? Ya da satici destegi (satan yok).

    SQLite ile yapınca mucize yaratmış olmayacaksın, sadece kendine özgü ve zahmetli bir sekilde yapmış olacaksın. Ben 1995 yılı oncesinde -SQL server'in filan olmadigi yillar-, prolog ile (5th gen. yapay zeka dili) kendimce bir "database" sistemi geliştirdim. Yaninada basit bir "kod jeneratör" yaptım, çok basit veritabanı gereken isler icin bir text dosyasına yazılanlarla tum bir uygulama yazılıyordu ve o gunun şartlarında "bir sanat şaheseri" yarattigimi düşünüyordum. Sonra tesadüfen Foxpro 2.0'i gordum, benim databasein her yaptigini yapamıyordu -bugun bile yapan yok-  ama o kadar hızlı v e kapasiteliydi ki, ben "tuh bunca zamanima, emegime yazık oldu dedim :) 



    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    23 Mayıs 2019 Perşembe 22:04
    Yanıtlayıcı
  • SQLite benim projemde mükemmel bir çözüm. Bunuda size boçluyum minnettarım beni yönlendirdiğiniz için zamanında. Şimdilik değiştirmem mümkün değil çok memnunum kendisinden gerçekten. Büyük verilerle zorlu denemeler yaptım hiç hayal kırıklığı yaratmadı. 
    • Düzenleyen hakan1992 24 Mayıs 2019 Cuma 00:19
    24 Mayıs 2019 Cuma 00:18
  • Tamam. Sen proje ile SQLite'te epey usta olacaksın, onunla ilgili bir sey ihtiyaç oldugunda sana danisiriz :) Kolay gelsin.


    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    24 Mayıs 2019 Cuma 14:47
    Yanıtlayıcı
  • Tamam. Sen proje ile SQLite'te epey usta olacaksın, onunla ilgili bir sey ihtiyaç oldugunda sana danisiriz :) Kolay gelsin.


    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    😂😂👍
    24 Mayıs 2019 Cuma 14:49
  • bir milyar dolarım olunca böyle gülemeyeceksiniz
    24 Mayıs 2019 Cuma 15:10
  • bir milyar dolarım olunca böyle gülemeyeceksiniz
    Ben gulmedim, daha dogrusu o gülme işareti samimiydi, senin düşündüğün sekilde alay amaçlı degil.


    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.


    24 Mayıs 2019 Cuma 20:07
    Yanıtlayıcı
  • yok abi canlevent gülüyor ona dedim.

    25 Mayıs 2019 Cumartesi 03:27
  • yok abi canlevent gülüyor ona dedim.

    espiri olduğu kanaatiyle ifade paylaştım,

    dilegimiz hep başarılı olmanızdan yanadır,

    25 Mayıs 2019 Cumartesi 07:41
  • Konu sohbete döndü devam edersek benim gördüğüm kadarı ile program yazmanın en kolay kısmı aslında kot yazmak. Bir kayıt takip programını kot anlamında yazabilmek kolay değilsede merakın varsa halloluyor sonuçta ben bir simülatör yazılımı oyun yazılımı yüz tanıma yazılımı üretmiyorum basit kayıt takip programı yapmaya çalışıyorum. Bir şeyi kaydeder onu okur görüntülersen oldu bitti yani bundan fazlası bir yazılım bilgisi gerekmiyorki aman aman. İşin asıl önemli kısmı yazılım dışı bilgiye yaratıcılığa mesleki tecrübeye ait. Bu yüzden en iyi programları en iyi yazılımcılar yapacak diye bir kural yok. Kim iyi yazılımcı ise o değil kim daha iyi muhasebeci ise o yazar programı anlatabildimmi. Bu yüzden insanları ciddiye almak gerek bu alanda. Yoksa biz duayenlerin farkındayız onlara yetişmek gibi bir hayalimizde olamaz doğrusu ihtiyacımızda pek olmaz. bizim yapacağımız at gözlüğü takmış gibi dar alanda biraz yazılıma hakimiyet sadece herşeyi bilmeye ne güç yeter ne gerek var 
    • Düzenleyen hakan1992 25 Mayıs 2019 Cumartesi 11:03
    25 Mayıs 2019 Cumartesi 10:57
  • Konu sohbete döndü devam edersek benim gördüğüm kadarı ile program yazmanın en kolay kısmı aslında kot yazmak. Bir kayıt takip programını kot anlamında yazabilmek kolay değilsede merakın varsa halloluyor sonuçta ben bir simülatör yazılımı oyun yazılımı yüz tanıma yazılımı üretmiyorum basit kayıt takip programı yapmaya çalışıyorum. Bir şeyi kaydeder onu okur görüntülersen oldu bitti yani bundan fazlası bir yazılım bilgisi gerekmiyorki aman aman. İşin asıl önemli kısmı yazılım dışı bilgiye yaratıcılığa mesleki tecrübeye ait. Bu yüzden en iyi programları en iyi yazılımcılar yapacak diye bir kural yok. Kim iyi yazılımcı ise o değil kim daha iyi muhasebeci ise o yazar programı anlatabildimmi. Bu yüzden insanları ciddiye almak gerek bu alanda. Yoksa biz duayenlerin farkındayız onlara yetişmek gibi bir hayalimizde olamaz doğrusu ihtiyacımızda pek olmaz. bizim yapacağımız at gözlüğü takmış gibi dar alanda biraz yazılıma hakimiyet sadece herşeyi bilmeye ne güç yeter ne gerek var 

         Çok karamsar bir yazı en azından benim için öyle , bundan bir 10-20 sene sonra neyi niye yaptığımı bilmeden at gözlüğü ile (sizin tabirinizle) kod yazıyor olmak istemem.

         Ayrıca neye göre en iyiyi seçiyoruz ? 

         Bakın bir örnek vereyim :

         
    int toplam=0;
    for(int x=0;x<=100000;x++){
      toplam+=x;
    }

         Yukarıdaki bu kod çok güzel bir şekilde çalışır ama aşağıdaki kod daha güzel çalışır :) 

          
    int ekadar =100000;
    int toplam = ((ekadar)*(ekadar+1))/2;

          

          Bunları fazla önemsemeden bir muhasebeci , muhasebe programını ilk örnekteki kafayla yazabilir :) 

          Ama dedikleriniz sadece bir muhasebeci için geçerli bence.

     

    25 Mayıs 2019 Cumartesi 11:50
  • Demek istediğim işe yarar bir ticari ürün yapmak için gereken yazılım seviyesi o kadar erişilmesi zor bir seviye değil. Ürünün şahaneliğini belirleyen şey yazılım bilgisi değil. Ticari ürünlerin çok büyük bir kısmı basit yazılım seviyeleri ile üretilebilir. Yazılım uzmanları başka bir boyuttur onlara gömülü yazılım yazda denebilir o zaman radarın yazılımını yapar yada çamaşır makinesinin yada grafik yazılımı yaz dersin görüntü işleme yazılımı istersin kamerana driver istersin aselsan ın haberleşme cihazına TCP IP haberleşmeyi yöneten bir şey istersin bunlar için eğitilmiş adamların seviyesi ile emlak bürosuna internet sitesine muhasebeye program yazanların seviyesi aynı değil. Ama aynı değiller diye bu bir sıkıntıda değil yani sana lazım olan şey bu kadardır ve sen onunda dünyalarca iş yapabilme imkanına sahipsin. Onu demek istedim ben mütevazi olmakla alakalı bir şey demiyorum ihtiyacımız bu kadar bizim. Birde tabi formasyonun insanlara açtığı kapıların kazandırdığı şeyler var. Banada CV mi verdiğimde cesaret edip işe alsalar bende belki ilerlerim ama aradaki fark zamanla bana iltifat edilmeyeceği için açılacak doğal oalrak. 
    • Düzenleyen hakan1992 25 Mayıs 2019 Cumartesi 14:20
    25 Mayıs 2019 Cumartesi 14:18
  • Demek istediğim işe yarar bir ticari ürün yapmak için gereken yazılım seviyesi o kadar erişilmesi zor bir seviye değil. Ürünün şahaneliğini belirleyen şey yazılım bilgisi değil. Ticari ürünlerin çok büyük bir kısmı basit yazılım seviyeleri ile üretilebilir. Yazılım uzmanları başka bir boyuttur onlara gömülü yazılım yazda denebilir o zaman radarın yazılımını yapar yada çamaşır makinesinin yada grafik yazılımı yaz dersin görüntü işleme yazılımı istersin kamerana driver istersin aselsan ın haberleşme cihazına TCP IP haberleşmeyi yöneten bir şey istersin bunlar için eğitilmiş adamların seviyesi ile emlak bürosuna internet sitesine muhasebeye program yazanların seviyesi aynı değil. Ama aynı değiller diye bu bir sıkıntıda değil yani sana lazım olan şey bu kadardır ve sen onunda dünyalarca iş yapabilme imkanına sahipsin. Onu demek istedim ben mütevazi olmakla alakalı bir şey demiyorum ihtiyacımız bu kadar bizim. Birde tabi formasyonun insanlara açtığı kapıların kazandırdığı şeyler var. Banada CV mi verdiğimde cesaret edip işe alsalar bende belki ilerlerim ama aradaki fark zamanla bana iltifat edilmeyeceği için açılacak doğal oalrak. 
         Ufak çaplı projeler için söylediklerinizin haklılık payı var.Umarım ileride istediğiniz yere gelirsiniz.
    25 Mayıs 2019 Cumartesi 17:44
  • Benim projem kullanıcıların kendi kayıt programlarını üretmesi için çok kolay arayüz ile bunu başaracakları bir ürün üretmek. İlişkisel veri desenine sahip tablolara dayalı hiçbir programlama ve veritabanı bilgisi istemeyen anamenü listeleme ekranı kayıt ekranı ve lazım olan bir programda olan arama çıktı analiz gibi araçlara sahip bir program yapmak. Yani kendi kayıt programlarını beklentilerinin % 100 ü değilde % 90 ı kadarı ile yetinmek kaydı ile kendileri üretecekler kullanacaklar bunuda çocukça bir basitlikte yapacaklar. Ama benzer çalışmalar çok var dünyada sonradan fark ettim maalesef. Access yada Excel VBA ları ile yapılan şeyler benim dediğim değil tabiki onlar zor çalışmalar. Ben çok basite indirmek istiyorum bu işi ve ortaya çıkan şeyle çok etkileyici olmalı. Bu konuda ki bildiklerinizi benle paylaşırsanız memnun olurum ne diyorsunuz bu konuda satılırmı bu proje sizce. Yada bunu en iyi yapan piyasadaki ürünler bildiğiniz hangileri var. Buradaki beyin fırtınam verinin doğal ilişkileri sistematiği. Veri nasıl işlenir nasıl ilişkilerle faydaya döner veri kümeleri arasındaki kaç çeşit ilişkiden hayatta veri faydaları üretiliyor onu analiz etmek yazılıma dökmek. SQL den bahsetmiyorum burada tabi daha insanca bir şeyden bahsediyorum. Bir stok takibi ile bir telefon rehberi arasındaki fark nedir mesela veri her ikisindede kullanılıyor ama birinde onu eksilterek arttırarak kullanıyorsun ortaya stok takibi kurgusu çıkıyor oysa altı üstü veri yani satır ve kolonlardan ibaret ikiside ama bir birinin yerine geçemiyor kurgu anlamında. Ben işte verilerin çeşitliliği üzerine çalışıyorum zihnen şimdi. Yazılımlarda yarım düzine kadar veri işleme sistematiği sadeleştirdim herşey o çerçevede dönüyor gördüğüm kadarı ile. Bunları bir uygulama müşteriye sunarsa iki tıktık ile kayıt takibide olur üretim planlamasıda personel takibide olur. Mesela bir tane daha söyleyim hiyerarşin ilişkili veri yapıları var yani biri öbürünün alt elemanı oluyor bir ağaç yapı yaratıyorlar böyle faydaya dönüyor ama oda sonuça bir tablo yani satır sütun ama fayda için her kaydın bir birinin alt üst ilişkisi ayrı bir kayıtta tanımlanması gerekiyor. Yönetim şemaları ürün ağaçları filan mesela. Anlatabiliyormuyum veri sistematiği ni basite indirgeme projem var. Bu konuda fikrinizi öğrenmek istiyorum  sektörün duayenleri olarak lütfen. Yani ben her işe çare demiyorum ama piyasada bir galeri programı emlak programı olmasını kabul edemiyorum bunlar çok basit kayıt takip yazılımları sonuçta çok gelen çarelerlede halledilebilir ürünler bunun için bu işe adanmış bir yazılıma hiç gerek yok. Benim dil problemim olduğu için dünya ne alemde bilemiyorum Türkiye de her konuda çok sığ zaten. Dünya bu işleri çoktan aşmışta olabilir yani boşa uğraşıyor olabilirim bu konuda fikrinizi çok önemsiyorum gerçekten 




    • Düzenleyen hakan1992 27 Mayıs 2019 Pazartesi 12:58
    27 Mayıs 2019 Pazartesi 12:41
  • hepsi çok etkileyici ama ben eksiklerini gördüm bu çalışmaların. Birkere internet tabanlı olmaları ve bir ortak portal dan sunucudan hizmet vermeleri bence bu listeyi kafadan çok küçültüyor. Böyle bir ürünün işletme içinde çalışmasını önermek çok önemli. Sonrasında bir çoğunda yine SQL gibi script gibi profesyonellere hitap eden geliştirme araçları sunmuşlar buda listeyi biraz daha kısaltır kalanlarda da özellikle ilişkisel ver ideseni sorunu gözlemledim daha ziyade taplolar oluşturmayı kolaylaştırmak ile yetinilmiş. En son olarakta bu bütün hepsinin sorunu kurulum kolaylığı ya hiç yok yada internet tabanlı kendi servislerinden destek alarak bu sırunu çözmüşler. Ben çok etkilendim bu ürünlerden ama bence hala bir boş alan var uğraşmak için. En iyileri bunlar ise şansım var yani. Gerçi daha yarısına bakmışken yorum yapıyorum. Ben hiç kot ve bilgi işlem ve veritabanı bilgisi gerektirmeden bu işi yapmak istiyorum. Ve bunu işletme içi çalışacak şekilde yapmak istiyorum. Hem büyük veri desteği sunacak hem kurulum ayarı portlar DNS ler filan olmayacak hem ağ üzerinde sunucu istemci çalışacak hemde ilişkisel veri deseni üzerinden veri hareketlerine son derece hakim olacak analiz edebilecek izlenebilir kılacak. Çalıştığım yerlerle alakalı gözlemlere dayanarak bir proje geliştiriyorum 

    • Düzenleyen hakan1992 27 Mayıs 2019 Pazartesi 14:14
    27 Mayıs 2019 Pazartesi 14:08
  • Biraz öyle tabi. Ama Access den de çok daha kolayı lazım bence insanlara. Bilgisayarlarında gerçek bir program kullanmaları lazım güne başlarken bildiğin % 100 o işe özel üretilmiş gibi program açıp kayıt yapmaları lazım. Bu konuda biraz ben sonuç aldım ama tekrar tekrar yapmak zorunda kalıyorum sürekli hiç bitmiyor projem bir türlü hatta gittikçe bitme oranı düşüyor gibi kafamdakileride eklemeye çalıştıkça. Nasıl bitecek projem bilmiyorum geçen sene yarısı bitmişti bu sene çeyreği bitmiş gibi sanki. Proje yönetimi deyip durdukları şey gerçekten çok lazım bir şey ben hiç beceremedim onu işte. 
    • Düzenleyen hakan1992 27 Mayıs 2019 Pazartesi 14:55
    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:43
    • Yanıt İşaretini Geri Alan hakan1992 27 Mayıs 2019 Pazartesi 22:43
    27 Mayıs 2019 Pazartesi 14:51
  • Ben ne demek istediğini anlamıyorum aslinda. Ya uzun bir sekilde access'i ya da Microsoft'un hayal kirikliklarindan bir digeri LightSwitch'i tarif ediyorsun. Ya da aslinda basitçe demek istediğin ad-hoc query dediğimiz sey. Yoksa VFP'nin application wizardini mi tarif ediyorsun bilemedim.

    "En iyileri bunlarsa" ... derken, dogrusu onlarin hepsini ben de bilmiyorum ama bildiklerim icin sen bu yorumu yapabiliyorsan, zaten asmissin, burada baskasinin fikrini sormana ihtiyacın yok. Ben de kendimce birseyler yaptım ama yukarıdakilere "en iyileri bunlarsa ..." yakistirmasi yapabiliyorsan, benimkini yerden yere vurursun:)




    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:43
    27 Mayıs 2019 Pazartesi 14:53
    Yanıtlayıcı
  • .

    @ÇetinBasoz abi Lightswitch'i geliştirme yapmayı kessek de hâlâ kullanıyoruz. Efsaneydi gerçekten. Ama Microsoft sanırım efsaneleri sevmiyor :) En son kendine Sharepoint içinde yer buldu sanırım. Ama takip etmedim o kısımları.


    www.cihanyakar.com


    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:43
    • Düzenleyen Cihan Yakar 29 Mayıs 2019 Çarşamba 10:02
    27 Mayıs 2019 Pazartesi 15:10
  • Bu konuda bir soru daha sorucam. İnternet tabanlı çözümler hakkında ne düşünüyorsunuz peki. Bunu iki türlü sormak gerek birincisi internet tabanlıdır ama kendi sunucusunu almıştır firma ama sonuçta internette bir sunucu yani seninde olsa. Diğeri ise şu reklamlarda çıkan internet tabanlı dış ticaret yada muhasebe uygulamaları gbi çözümler. Bana çok ters geliyor hangi patron kurumsal verisini başkasında saklar ve ona güvenir. ama bir yandanda bu adamlarda tv de reklam verecek kadar bu işi başarmışlar demekki talep var bu çözümlere. Benim şirketim olsa ben yapmam mesela excel de tutarım yine uzak sunucuya teslim etmem verimi ticari sırlarımı. Niye soruyorum çünkü bu yukarıdaki örneklerinde tamamına yakını internet tabanlı çözümler
    • Düzenleyen hakan1992 27 Mayıs 2019 Pazartesi 16:46
    27 Mayıs 2019 Pazartesi 16:45
  • Senin girmeye çalıştığın model B2B ise kiralanan şey yazılım değil! Hizmet!  Bunu kaçırdığın sürece olmayacak bu iş ben söyleyeyim. 


    www.cihanyakar.com





    • Düzenleyen Cihan Yakar 27 Mayıs 2019 Pazartesi 18:45
    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:42
    27 Mayıs 2019 Pazartesi 18:41
  • "Bilgisayarlarında gerçek bir program kullanmaları lazım güne başlarken bildiğin % 100 o işe özel üretilmiş gibi program açıp kayıt yapmaları lazım."

    Tamam iste aynen bu cümledeki yazildigi gibi olur ama icinden "gibi" kelimesini cikarmalisin. Ben ornegin ise özel yazılım geliştiriyorum, sabahtan aksama o programdalar. Kotu yani, senin programınla ilgisi olsun olmasın hersey senden biliyorlar, çünkü tek kullandıkları senin programın.

    "Hangi patron ..." - birçok patron. O firmaların verilerin korunması hakkında ciddi taahhütleri var (yurt disindaki adalet sisteminin koruması altında yani guvenilir). Yine de bu konuda tartışmaya girmem, her koyun kendi bacağından asılır, ben guvensem de, sen güvenme. Adamlar bırak datalarını vermeyi, o datanın yedeklenmesi, dagitilmasi ... konusunda ciddi paralar oduyorlar. Bir de, senin muhasebe verini o firmalar ne yapsın, açık versen ilgilenmezler.

    Bir baska nokta, internet tabanli olmaktan kastın "browser based" olsa gerek. Onun icin internete gerek yok. Bir ofisteki internete bağlı olmayan, tek makinede de calisir, bir makine "server" gorevini üstlenerek N tane lokal agdaki makinede de. Isin icine VPN ya da socket programming koyarsın, WAN\LAN karisimi N tane ofis lokasyonunda da guvenle calisirsin.




    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.

    • Yanıt Olarak İşaretleyen hakan1992 27 Mayıs 2019 Pazartesi 22:42
    27 Mayıs 2019 Pazartesi 18:41
    Yanıtlayıcı
  • Dünyadaki küçük büyük işletmeleri analiz etsek en az % 99 u tüm veri saklama işini en fazla Excel tabloları ile sağlıyor halen benim tahminimce. Bu tablolar arasında hiç bir join bağlantısı yok her tabloda firma kolonu yeniden elle yazılıyor mesela. Yani beklenti ne kadar alt seviyede aslında. 
    • Düzenleyen hakan1992 28 Mayıs 2019 Salı 09:57
    28 Mayıs 2019 Salı 09:51
  • senin müşteri profilin en üst segment de ondan öyledir. Big data ile ilgilenen firmanın Excel ile işi olmaz tabiki. 
    • Düzenleyen hakan1992 28 Mayıs 2019 Salı 11:12
    28 Mayıs 2019 Salı 10:57