
17.11.2009, 10:32
|
|
Познающий
Регистрация: 03.03.2009
Сообщений: 86
С нами:
9047791
Репутация:
258
|
|
Сообщение от felix_
PHP код:
$one = mysql_qurey("SELECT * FROM user WHERE id=1 LIMIT 1",$connect);
$name1=mysql_fetch_array($one);
echo $name1[name];
PHP код:
$one = mysql_query("SELECT name FROM user WHERE id=1 LIMIT 1",$connect);
$name2=mysql_fetch_array($one);
echo $name2[name];
по идее второй код занимает меньше памяти? или нет смысла выбирать столбцы только те которые нужны?
Раз уж задумался о памяти, было бы разумнее использовать mysql_fetch_assoc, не забивая память
|
|
|

17.11.2009, 01:27
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами:
9649706
Репутация:
3338
|
|
думаю есть смысл, и дело скорее не в памяти, а скорости sql-запроса + нагрузка на БД
тем более если в итоге нужно только name выцепить
|
|
|

17.11.2009, 09:45
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
С нами:
10021597
Репутация:
905
|
|
Всегда стараюсь выцепить только те колонки, которые действительно нужны. Имхо не слишком целесообразно брать все 30 полей из таблицы, если нужно на самом деле одно-два-три
|
|
|

21.11.2009, 10:33
|
|
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
С нами:
9356016
Репутация:
31
|
|
Здравствуйте!
В таблице keywords записаны следующий строки:
i want buy moto
i want buy new auto
want i buy motocycle
buy want i new moto
Строка-поиск: i want buy
Возможно ли запросом выбрать все строки, в которых присутствуют слова из исходной строки поиска?
Обычным
PHP код:
SELECT * FROM keywords WHERE string LIKE '%i want buy%'
не обойтись, т.к. вернуться только первые две строки, мне нужно вернуть все. Это возможно? Если возможно то как?
Заранее благодарен!
Последний раз редактировалось OnArs; 21.11.2009 в 10:37..
|
|
|

21.11.2009, 12:46
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
С нами:
10021597
Репутация:
905
|
|
Попробуйте как-нить так
Код:
string RLIKE '(^| )i( |$)'
AND string RLIKE '(^| )want( |$)'
AND string RLIKE '(^| )buy( |$)'
|
|
|

21.11.2009, 22:54
|
|
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
С нами:
9356016
Репутация:
31
|
|
Ещё раз здравствуйте!
В таблице строки:
id string
1 я строчкоо
2 я строчкоо
1 я строчкоо
5 я строчкоо
9 я строчкоо
19 я строчкоо
21 я строчкоо
Нужно получить НОМЕР строки в таблице, т.е. для строки с id = 5 запрос должен вернуть 4
Возможно ли это? Если да, то как будет выглядеть запрос или в какую сторону копать?
Заранее благодарен! 
|
|
|

22.11.2009, 01:23
|
|
Новичок
Регистрация: 20.01.2008
Сообщений: 17
С нами:
9635763
Репутация:
7
|
|
mysql_num_rows() ?
|
|
|

22.11.2009, 04:23
|
|
Постоянный
Регистрация: 24.11.2008
Сообщений: 416
С нами:
9191105
Репутация:
100
|
|
таблица, три поля:
- ид (автоинкримент)
- идф (уникальное)
- текст
как заполнять в пхп правильно уникальное поле, разве только генерить число, проверять через цикл есть ли оно в поле "идф", если нет вставлять?что то кажеться как то проще должно быть 
|
|
|

24.11.2009, 17:08
|
|
Познающий
Регистрация: 20.02.2008
Сообщений: 82
С нами:
9590577
Репутация:
2
|
|
Сообщение от SaiRus
таблица, три поля:
- ид (автоинкримент)
- идф (уникальное)
- текст
как заполнять в пхп правильно уникальное поле, разве только генерить число, проверять через цикл есть ли оно в поле "идф", если нет вставлять?что то кажеться как то проще должно быть 
Я бы на твоем месте базу немного по иномму бы огранизовал, сделав идф автоинкрементом. Почему? да потому что AUTO_INCREMENT генерирует число, не из соображений "создать новое максимальное число", а из соображений "создать уникальное число"
UNIQUE же используется для того, дабы, не дай бог, злобный юзверь не внёс в базу то, что уже есть, иначе получишь предупреждение, или же возможность UPDATE старый UNIQUE с помозью команды ON DUPLICATE KEY UPDATE ))). Просто не путайте понятия, и тогда решение задачи станет легче 
Последний раз редактировалось Architek86; 24.11.2009 в 17:15..
|
|
|

22.11.2009, 05:15
|
|
Постоянный
Регистрация: 29.07.2009
Сообщений: 400
С нами:
8835027
Репутация:
150
|
|
PHP код:
if(mysql_query("SQL QUERY"))
{
//Тут действие если успешно добавлено уникальное значение
echo "Добавлено";
}else echo "Не добавлено, ключ совпадает";
?>
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|