Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Это правильный запрос?
 
 автор: coloboc66   (21.08.2008 в 14:04)   письмо автору
 
 

Есть таблица tab с полями field1, field2, field3. В одной из строк в поле field3 записана строка "rrr". Мне нужно получить значение поля field1, соответствующее этой строке (rrr). Но вот такой запрос:
$query="select field1 from tab where field3=rrr";
Получаю ошибку: Unknown column 'rrr' in 'where clause'
Запрос неправильный или что?
.

  Ответить  
 
 автор: BinLaden   (21.08.2008 в 14:22)   письмо автору
 
   для: coloboc66   (21.08.2008 в 14:04)
 

Да, запрос неправильный.

  Ответить  
 
 автор: coloboc66   (21.08.2008 в 14:34)   письмо автору
 
   для: BinLaden   (21.08.2008 в 14:22)
 

А как правильно?

  Ответить  
 
 автор: cheops   (21.08.2008 в 14:39)   письмо автору
 
   для: coloboc66   (21.08.2008 в 14:34)
 

Строку rrr следует заключить в кавычки
<?php
  $query
="select field1 from tab where field3='rrr'";
?>

  Ответить  
 
 автор: coloboc66   (21.08.2008 в 17:45)   письмо автору
 
   для: cheops   (21.08.2008 в 14:39)
 

Спасибо! Замучили уже эти кавычки! И массивы тоже достают...

  Ответить  
 
 автор: coloboc66   (29.08.2008 в 13:52)   письмо автору
 
   для: coloboc66   (21.08.2008 в 17:45)
 

Ну а вот если мне надо каждую строку извлекать из поля сверху вниз и делать с ней определённое действие, например, сравнивать с образцовой строкой? По идее, можно вывести сразу все строки этого поля:
$query="select field1 from tab";
и поочереди их сравнивать с образцовой.
А можно выводить по одной, сравнивать и прекратить запросы к БД, когда соответствие найдено.
Какой вариант лучше?

  Ответить  
 
 автор: ols   (29.08.2008 в 14:31)   письмо автору
 
   для: coloboc66   (29.08.2008 в 13:52)
 

>каждую строку извлекать из поля сверху вниз
Имеете ввиду по возрастанию?
Почему бы просто не делать так

<?
//Образцовая строка
$str "dsfsdgdfgdffh"
//запрос
$sql "SELECT field1 FROM tab WHERE field3 = '$str' ORDER BY field3 ";
?>

  Ответить  
 
 автор: coloboc66   (29.08.2008 в 16:19)   письмо автору
 
   для: ols   (29.08.2008 в 14:31)
 

Фиг его знает, что-то я запутался. Вот есть интересная задачка: Нужно перевести тайское предложение. Проблема в том, что в тайском предложении слова не разделяются между собой пробелами, а пишутся слитно. Предложения разделяются между собой не точками, а пробелами. Как перевести скриптом такой текст? Допустим, есть в mySQL таблица словаря с двумя полями:
create table words ( thai char(50), rus char(50));

В этой таблице в каждой строке просто одиночные слова - для простоты, без множества значений...

  Ответить  
 
 автор: AcidTrash   (29.08.2008 в 23:48)   письмо автору
 
   для: coloboc66   (29.08.2008 в 16:19)
 

Я конечно тайский язык не знаю.
>В этой таблице в каждой строке просто одиночные слова
>Проблема в том, что в тайском предложении слова не разделяются между собой
>пробелами, а пишутся слитно.
Очень интересно посмотреть, как вы хотите это сравнивать.

  Ответить  
 
 автор: coloboc66   (30.08.2008 в 15:50)   письмо автору
 
   для: AcidTrash   (29.08.2008 в 23:48)
 

После выходных покажу. Решение уже нашёл сам - и очень простое, по-крайней мере - между латиницей и кириллицей работает хорошо пока...

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования