Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Двойной ключ
Форумы портала PHP.SU » » Работа с СУБД » Двойной ключ

Страниц (1): [1]
 

1. ВэйДлин - 28 Июля, 2012 - 03:43:02 - перейти к сообщению
Хотел поинтересоваться, для подобного запроса сойдет один двойной ключ?
CODE (SQL):
скопировать код в буфер обмена
  1. (`id_1` = 1 `id_2` = 2) OR (`id_1` = 2 AND `id_2` = 1)


Делать так?
CODE (SQL):
скопировать код в буфер обмена
  1. KEY `id_12` (`id_1`,`id_2`),

или так?
CODE (SQL):
скопировать код в буфер обмена
  1. KEY `id_12` (`id_1`,`id_2`),
  2. KEY `id_21` (`id_2`,`id_1`)
2. tuareg - 28 Июля, 2012 - 06:32:24 - перейти к сообщению
Для запроса
CODE (SQL):
скопировать код в буфер обмена
  1. (`id_1` = 1 `id_2` = 2) OR (`id_1` = 2 AND `id_2` = 1)

хватит
CODE (SQL):
скопировать код в буфер обмена
  1. KEY `id_12` (`id_1`,`id_2`),

Причем этот же ключ будет использоваться и для запросов с id_1
3. Мелкий - 28 Июля, 2012 - 08:44:23 - перейти к сообщению
ВэйДлин пишет:
, для подобного запроса сойдет один двойной ключ?

Да, сойдёт.
Но лучше это спрашивать у explain'а.

 

Powered by ExBB FM 1.0 RC1