Ответов: 3 Просмотров: 892
|
Структура таблицы (Отобразить)CODE ( SQL):
скопировать код в буфер обмена
CREATE TABLE `sb_admins` ( `aid` INT(6) NOT NULL AUTO_INCREMENT, `user` VARCHAR(64) NOT NULL, `authid` VARCHAR(64) NOT NULL DEFAULT '', `password` VARCHAR(128) NOT NULL, `gid` INT(6) NOT NULL, `email` VARCHAR(128) NULL DEFAULT NULL, `validate` VARCHAR(128) NULL DEFAULT NULL, `extraflags` INT(10) NOT NULL, `immunity` INT(10) NOT NULL DEFAULT '0', `srv_group` VARCHAR(128) NULL DEFAULT NULL, `srv_flags` VARCHAR(64) NULL DEFAULT NULL, `srv_password` VARCHAR(128) NULL DEFAULT NULL, `lastvisit` INT(11) NULL DEFAULT NULL, `lastdate` DATETIME NULL DEFAULT NULL, PRIMARY KEY (`aid`), UNIQUE INDEX `user` (`user`), UNIQUE INDEX `authid` (`authid`) ) COLLATE='utf8_general_ci' ENGINE=MyISAM AUTO_INCREMENT=50 ;
Если я подставлю в первый запрос второй - получится что юзер который ищется во втором запросе по всей таблице юзеров, в первом случае будет искаться еще и по ключу authid, да и к тому же с лимитом 1.
Вопрос: можно как нибудь сделать так же как в двух отдельных запросах, но только всё в одном, но что бы второй запрос проскочил по всей таблице?
P.S. вся трабла из за того что в user UNIQUE, писать для каждого UNIQUE проверку - не так уж и эстетично, особенно в отдельных запросах. |