Merhabalar, sql ile alakalı bir problemim var.
alanlarım şu şekilde
id user_id sayısal_veri tarih
bu kayıtlarda aynı user_id 'ye kayıtlı yüzlerce kayıtta olabiliyor çok az kayıtta olabiliyor.
ben her user_id için aynı tarihli maximum 10 kayıt çekmesini istiyorum.
(mesela 12.02.2023 tarihli 15 nolu user e kayıtlı 30 kaydın ilk 10'nunu alacak.
13.02.2023 tarihli 15 nolu userin 2 kaydı varsa onları getirecek.
diğer userler içinde aynı durum geçerli.
yani aynı tarihte bir üye için sadece 10 kayıt çekmesi gerekiyor.
)
sanırım derdimi anlatabilmişimdir.
$sql = "SELECT id, user_id, sayisal_veri, tarih FROM kayitlar WHERE tarih = ? ORDER BY user_id, id LIMIT 10"; $stmt = $conn->prepare($sql);
$stmt->bind_param("s", $secilen_tarih);
$stmt->execute();
$result = $stmt->get_result();
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " | User ID: " . $row["user_id"] . " | Sayısal Veri: " . $row["sayisal_veri"] . " | Tarih: " . $row["tarih"] . "<br>"; }
} else {
echo "Sonuç bulunamadı."; }