1

関数WHEREを使用するときに条件をグループ化するにはどうすればよいですか? selecting標準 SQL での記述方法は知っていますが、ezSQL を使用してこれを解決することはできません。

私が欲しいもの

SELECT user_id, user_password, user_password_key
FROM users
WHERE (user_login = $userData OR user_email = $userData) AND user_status=1

私が試したこと

$db->selecting('users', 'user_id, user_password, user_password_key',
               where(eq('user_status', '1', _AND)),
               where(eq('user_login', $userData, _OR ), eq('user_email', $userData )));
$db->selecting('users', 'user_id, user_password, user_password_key',
               where(eq('user_status', '1')),
               where(eq('user_login', $userData, _OR ), eq('user_email', $userData )));
$db->selecting('users', 'user_id, user_password, user_password_key',
               $db->where(eq('user_login', $userData, _OR ), eq('user_email', $userData )),
               $db->where('user_status', '1'));
$db->selecting('users', 'user_id, user_password, user_password_key',
               eq('user_login', $userData, _OR ), eq('user_email', $userData ),
               $db->where('user_status', '1') );

の条件を削除すると機能しますがuser_status、そこにある場合は を返しますNULL

https://github.com/ezSQL/ezSQL#example-for-using-prepare-statements-indirectly-with-above-shortcut-sql-methodsからコピーした例

4

1 に答える 1