Em termos de otimizacao ... Com join vc pode usar with()
Agora .. Pela teoria de banco de dados fazer um select * e mais otimizado do que buscar apenas um campo pois o banco tem de fazer uma busca linear em cada registro ... Vc tem uma perda de desempenho da ordem N * R onde N e o numero de campos e R o numero de registros ... Entao, quanto maior for a quantidade de campos e maior o banco .. Mais desempenho do banco vc perde tentando buscar uma coluna. O Orm esta correto ... Em 19/02/2014 08:19, "Douglas J.A.M" <[email protected]> escreveu: > Vocês estão se enganando, a questão não é puxar apenas uma coluna na > variável e sim otimizar a consulta gerando menor processando para o > servidor, o comando ->select ainda sim puxa todos os campos isso por ser um > ORM onde se busca o objeto inteiro conforme explicado por Rodrigo Monteiro, > por isso recomendamos a utilização do select puro e nativo, vai que o cara > tem mil colunas tipo binary, realmente é pesado. > > ORM::Factory('Cliente')->select('nome')->find_all(); > echo Database::instance()->last_query; > > > Em 19 de fevereiro de 2014 00:59, Renan Vaz <[email protected]>escreveu: > >> Isso, usa o ->select >> >> Abs, >> Renan Vaz >> Cel: (11) 97148.6994 >> Skype: vazrenan >> Twitter: @renanvaz >> Facebook: http://www.facebook.com/renanvaz >> >> >> Em 18 de fevereiro de 2014 13:23, felipe bastos >> <[email protected]>escreveu: >> >> seria isso?? >>> >>> $user = ORM::factory('user')->select('username')->find_all(); >>> >>> select u.username from user u >>> >>> >>> Em 18 de fevereiro de 2014 11:16, Diogo Machado >>> <[email protected]>escreveu: >>> >>> Valeu galera. Pensei que tinha como otimizar isso de forma simples. Vlw >>>> mesmo! >>>> >>>> Em terça-feira, 18 de fevereiro de 2014 10h46min17s UTC-3, Rodrigo >>>> Monteiro Ferreira escreveu: >>>> >>>>> Isso mesmo que o Douglas falou! >>>>> >>>>> Mas lembando que vc esta trabalhando com OO e o ORM do framework eh >>>>> para isso mesmo, buscar o objeto inteiro mesmo se for pegar um campo eh >>>>> melhor buscar tudo... se nao fica com kra de gambiarra... >>>>> >>>>> >>>>> Em 18 de fevereiro de 2014 10:40, Douglas J.A.M >>>>> <[email protected]>escreveu: >>>>> >>>>>> Que eu saiba so com DB::Select('consulta'), anão que voce extenda e >>>>>> personalize o ORM criando um metodo aí que receba por parametro o >>>>>> campo/campos, e este faça o DB::SELECT utilizando da tatica do >>>>>> _tablename. >>>>>> >>>>>> >>>>>> Em 18 de fevereiro de 2014 10:12, Diogo Machado < >>>>>> [email protected]> escreveu: >>>>>> >>>>>> Bom dia pessoal, é uma dúvida antiga. Eu reparei, que toda vez que >>>>>>> uso ORM, ele faz um SELECT *, e as vezes eu só que uma informação da >>>>>>> tabela. Alguém sabe como fazer isso? >>>>>>> >>>>>>> -- >>>>>>> Você está recebendo esta mensagem porque se inscreveu no grupo >>>>>>> "Kohana Php" dos Grupos do Google. >>>>>>> Para cancelar a inscrição neste grupo e parar de receber seus >>>>>>> e-mails, envie um e-mail para [email protected]. >>>>>>> Para postar neste grupo, envie um e-mail para >>>>>>> [email protected]. >>>>>>> >>>>>>> Visite este grupo em http://groups.google.com/group/kohana-php. >>>>>>> Para obter mais opções, acesse https://groups.google.com/ >>>>>>> groups/opt_out. >>>>>>> >>>>>> >>>>>> -- >>>>>> Você está recebendo esta mensagem porque se inscreveu no grupo >>>>>> "Kohana Php" dos Grupos do Google. >>>>>> Para cancelar a inscrição neste grupo e parar de receber seus >>>>>> e-mails, envie um e-mail para [email protected]. >>>>>> Para postar neste grupo, envie um e-mail para >>>>>> [email protected]. >>>>>> >>>>>> Visite este grupo em http://groups.google.com/group/kohana-php. >>>>>> Para obter mais opções, acesse https://groups.google.com/ >>>>>> groups/opt_out. >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Rodrigo Monteiro >>>>> [email protected] >>>>> (11) 96267-9366 >>>>> >>>> -- >>>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana >>>> Php" dos Grupos do Google. >>>> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, >>>> envie um e-mail para [email protected]. >>>> Para postar neste grupo, envie um e-mail para >>>> [email protected]. >>>> Visite este grupo em http://groups.google.com/group/kohana-php. >>>> Para obter mais opções, acesse https://groups.google.com/groups/opt_out >>>> . >>>> >>> >>> >>> >>> -- >>> http://agilesocial.net >>> http://twitter.com/felipebastosweb >>> http://facebook.com/felipebastosweb >>> >>> -- >>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana >>> Php" dos Grupos do Google. >>> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, >>> envie um e-mail para [email protected]. >>> Para postar neste grupo, envie um e-mail para >>> [email protected]. >>> Visite este grupo em http://groups.google.com/group/kohana-php. >>> Para obter mais opções, acesse https://groups.google.com/groups/opt_out. >>> >> >> -- >> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana >> Php" dos Grupos do Google. >> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, >> envie um e-mail para [email protected]. >> Para postar neste grupo, envie um e-mail para [email protected] >> . >> Visite este grupo em http://groups.google.com/group/kohana-php. >> Para obter mais opções, acesse https://groups.google.com/groups/opt_out. >> > > -- > Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana > Php" dos Grupos do Google. > Para cancelar a inscrição neste grupo e parar de receber seus e-mails, > envie um e-mail para [email protected]. > Para postar neste grupo, envie um e-mail para [email protected]. > Visite este grupo em http://groups.google.com/group/kohana-php. > Para obter mais opções, acesse https://groups.google.com/groups/opt_out. > -- Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos Grupos do Google. Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para [email protected]. Para postar neste grupo, envie um e-mail para [email protected]. Visite este grupo em http://groups.google.com/group/kohana-php. Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
