処理しなければならない小さなタスクがあります。関数を使用して手動で SQL を書き出すこともできますが、これについて学ぶことに本当に興味があります。query()
注:私は(特にフレームワークとして)ZFにかなりグリーンです..私はDBをライブラリとして使用しているだけです。
望ましい結果:
SQLを次のように表示したいのは次のようなものです。
SELECT name, phone, email
FROM company
WHERE name = 'Acme Anvil Corp'
AND ( category1 = 'abc'
OR category3 = 'klm'
OR category8 = 'xyz'
)
私がこれまでに得た場所:
$select = $db
->select()
->from('company, array('name', 'phone', 'email'))
->where('name = ?', 'Acme Anvil Corp')
->limit(1);
その後、私は悩まされています。
たくさんの 's jut を追加してorWhere()
も、望ましい結果は得られません。集合グループに
たくさんの 's を追加するにはどうすればよいですか?orWhere()
()
別の方法として、SQL を次のようなものにすることを目指すルートに進むことを考えました。
SELECT c.name, c.phone, c.email
FROM (
SELECT name, phone, email
FROM company
WHERE category1 = 'abc'
OR category3 = 'klm'
OR category8 = 'xyz'
) AS c
WHERE c.name = 'Acme Anvil Corp'
(私は SQL の第一人者ではないので、これら 2 つに大きな違いがある場合は、遠慮なくフィードバックをお寄せください :)
繰り返しますが、それにアプローチする方法がわかりません。