|
|
|
| есть строка1, например, |6|22|11|32|8|33|
есть в таблице
CREATE TABLE 'account_lottery' (
'id' bigint(255) NOT NULL auto_increment,
'id_lottery' int(50) NOT NULL default '0',
'id_user' int(50) NOT NULL default '0',
'ticket' varchar(100) NOT NULL default '0',
'date' datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY ('id')
) TYPE=MyISAM AUTO_INCREMENT=38 ;
#
# Dumping data for table 'account_lottery'
#
INSERT INTO 'account_lottery' VALUES (1, 1, 1, '6|22|10|30|28|33|', '2006-05-08 13:42:27');
|
число строка2 6|22|10|30|28|33|, мне нужно проверить совпадают ли 3 какие-нить числа, т.е. найти общие 3 числа у этих двух строк, и есть такое происходит(есть какие-нить общие 3 числа и у строки1 и у строки2), тогда вывести id строки2(которая из базы). Надеюсь понятно объяснил. Подскажите как это осуществить.Заранее спасибо | |
|
|
|
|
|
|
|
для: FaStY
(19.05.2006 в 23:16)
| | хотя строка может быть такая 6|22|11|32|8|33| или такая 6|22|11|32|8|33 | |
|
|
|
|
|
|
|
для: FaStY
(20.05.2006 в 18:50)
| | посидел подумал... идея такая:
сделать строку в БД вида
из искомых 6 чисел составляем все возможные комбинации. Их получается порядка десятка. Красивый алгоритм еще предстоит придумать:)
Далее запрос
SELECT id FORM table WHERE (pole LIKE '%|6|%' AND pole LIKE '%|12|%' AND pole LIKE '%15%') OR (pole LIKE '%|6|%' AND pole LIKE '%|12|%' AND pole LIKE '%20%') OR и так далее
|
выдаст нам список победителей. | |
|
|
|