v2.5.2
Giriş yap

Mysql kayıtları 1 kere saydırmak

mb
355 defa görüntülendi

Merhabalar,
Başvuru aldığım bir form var ve bu katılımcıların bilgilerine ulaşmak istiyorum.
Ama her katılımcıyı bir kere saydırmak istiyorum. Bunun için de bayikodunu baz
alarak yapıyorum. Aşağıdaki sorgu

    SELECT DISTINCT `bayikodu` FROM katilimcilar ORDER BY `bayikodu`

Kayıt oldukları tabloda adı, soyadı, telefon, bayikodu bilgileri yer alıyor.

Sorguyu çalıştırdığım da bana sadece bayikodu bilgisini veriyor. Benim istediğim
bayikodunu baz alarak başvuruları saysın ama ben o kişilerin diğer bilgilerini
de görebiliyim.

Sorguya bayikodu, adi, soyadı gibi tüm verileri ekleyerek sorgulamak istemiyorum.
Çünkü bayikodunu doğru yazsa bile adı ve soyadı gibi bilgileri farklı yazdığında
bu sefer farklı bir kişi olarak algıladığı için tekrardan sayıyor.
Bunun için nasıl bir sorgu yazabilirim.

mb
740 gün önce

Başka bir sunucuya veritabanı yediğini alıp yükledim. O sunucu da aşağıdaki kodu çalıştırdığımda istediğim sonucu verdi.

SELECT * FROM katilimcilar GROUP BY `bayikodu` ORDER BY `bayikodu` ASC

Normal sunucuda çalıştırdığımda aşağıdaki hatayı alıyorum.

Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'veritabani_dosya.katilimcilar.katilimci_id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by