Bir SQL deyiminde MySQL veri alınıyor

3 Cevap php

Ben şöyle Mysql benim verileri alıyorum eğer:

    $result = $dbConnector->Query("SELECT * FROM branches, businesses WHERE branches.BusinessId = businesses.Id ORDER BY businesses.Name");
    $resultNum = $dbConnector->GetNumRows($result);
    if($resultNum > 0)
    {
        for($i=0; $i < $resultNum; $i++)
        {
            $row = $dbConnector->FetchArray($result);
            // $row['businesses.Name'];
            // $row['branches.Name'];
            echo $row['Name'];
        }
    }

Herkes alan işletmelerin Adı ve nasıl şubelerinden adını yazdırmak için yazdırmak nasıl biliyor mu?

Benim sadece diğer alternatif alanlar yeniden adlandırmak ya da iki ayrı sorgu ile Mysql çağırmaktır.

Şimdiden teşekkürler

3 Cevap

Ben select alanları yeniden adlandırmak için, SQL sorgusu değiştirmek istiyorsunuz:

  • veritabanındaki alanları yeniden adlandırmak gerek yok
  • İki sorgular gerek.

Böyle bir şey çalışması gerekir:

select branches.br_field1, branches.name as br_name, branches.br_field3,
  businesses.field1 ad bu_field2, businesses.name as bu_name
from
  ...

Tabii ki, size kalmış isimleri tercih ;-)


For more informations, don't hesitate to take a look at the manual :

A select_expr can be given an alias using AS alias_name. The alias is used as the expression's column name and can be used in GROUP BY, ORDER BY, or HAVING clauses.

(And there is more I didn't quote ^^ )

Lütfen SQL daha spesifik olun:

$result = $dbConnector->Query("SELECT branches.Name as branch_name, businesses.Name as business_name FROM branches, businesses WHERE branches.BusinessId = businesses.Id ORDER BY businesses.Name")
$resultNum = $dbConnector->GetNumRows($result);
if($resultNum > 0)
{
    for($i=0; $i < $resultNum; $i++)
    {
        $row = $dbConnector->FetchArray($result);
        echo $row['branch_name'];
        echo $row['business_name'];
    }
}

$result = $dbConnector->Query("SELECT businesses.Name buname, branches.Name braname FROM branches, businesses WHERE branches.BusinessId = businesses.Id ORDER BY businesses.Name"); $resultNum = $dbConnector->GetNumRows($result); [...] echo $row['buname']; echo $row['braname'];

Sen sütunlara takma isimler vermek zorundasınız.