<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум PHP-MyAdmin.RU &mdash; Перевод в другой регистр?]]></title>
	<link rel="self" href="https://forum.php-myadmin.ru/extern.php?action=feed&amp;tid=654&amp;type=atom" />
	<updated>2008-01-10T09:14:35Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.php-myadmin.ru/viewtopic.php?id=654</id>
		<entry>
			<title type="html"><![CDATA[Re: Перевод в другой регистр?]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=4235#p4235" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>А можно это сделать сразу со всеми не заглавными буквами [а-я]</p></blockquote></div><p>Для того я регулярное выражение и привел.<br />SELECT * FROM `main` WHERE `title` REGEXP BINARY &#039;^[а-я]&#039;;</p><div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>Неужели нет такого оператора, который бы мог найти последовательность одинаковых(неизвестных) символов ?</p></blockquote></div><p>Ни в PHP, ни в C, таких функций не знаю.</p><div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>Как можно найти строки с определенным количеством текстовых символов?</p></blockquote></div><p>SELECT * FROM `main` WHERE CHAR_LENGTH(`title`) &gt;= 10;</p>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2008-01-10T09:14:35Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=4235#p4235</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перевод в другой регистр?]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=4234#p4234" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Hanut сказал:</cite><blockquote><p>не забудьте выставить соответствующее сопоставление соединения на главной phpMyAdmin.</p></blockquote></div><p>Да, надо было поменять кодировку с cp1251_general_ci на cp1251_bin</p><div class="quotebox"><cite>Hanut сказал:</cite><blockquote><p>SELECT *&nbsp; FROM `main` WHERE ASCII(LEFT(`title`, 1)) = ASCII(&#039;A&#039;);</p></blockquote></div><p>А можно это сделать сразу со всеми не заглавными буквами [а-я]</p><div class="quotebox"><cite>Hanut сказал:</cite><blockquote><p>SELECT * FROM `table` WHERE `field` NOT REGEXP &#039;[а-я]&#039;;</p></blockquote></div><p>Спасибо, именно так.</p><div class="quotebox"><cite>Hanut сказал:</cite><blockquote><p>Нет, невозможно такое сделать с помощью SQL запроса.</p></blockquote></div><p>Неужели нет такого оператора, который бы мог найти последовательность одинаковых(неизвестных) символов ? (...)</p><p>И самый последний вопрос: Как можно найти строки с определенным количеством текстовых символов?</p><p>SELECT *&nbsp; FROM `main` WHERE title like &#039;_______&#039;&nbsp; - это подходит только для известного числа символов.<br />А если надо &quot;больше и равно&quot; или &quot;меньше и равно&quot; ?</p>]]></content>
			<author>
				<name><![CDATA[nikola0077]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=661</uri>
			</author>
			<updated>2008-01-10T07:05:15Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=4234#p4234</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перевод в другой регистр?]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=4231#p4231" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>- SELECT *&nbsp; FROM `main` WHERE ASCII(LEFT(`title`, 1)) = ASCII(&#039;A&#039;);</p><p>А как применить это сразу ко всем русским буквам? Это работает только с латиницей?<br />кстати, есть еще один вариант: SELECT * FROM `main` WHERE `title` LIKE BINARY &quot;a%&quot;</p></blockquote></div><p>Что значит &quot;ко всем русским буквам&quot;?<br />Ваш вариант более правилен, только при поиске в национальных кодировках, вроде cp1251, не забудьте выставить соответствующее сопоставление соединения на главной phpMyAdmin.<br />Вариант поиска по регулярному выражению, который, в ряде случаев, может быть полезен:<br />SELECT * FROM `main` WHERE `title` REGEXP BINARY &#039;^a&#039;;</p><div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>SELECT * FROM `table` WHERE `field` REGEXP &#039;[a-zA-Z]+&#039;;&nbsp; &nbsp;- это немного не то, нужно чтоб строка содержала только слова на английском языке и символы, а русских букв не содержала вообще.&nbsp; тут &quot;NOT&quot; вроде не работает?</p></blockquote></div><p>Может так:<br />SELECT * FROM `table` WHERE `field` NOT REGEXP &#039;[а-я]&#039;;</p><div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>Например: Если строка содержит более 3 совпадений состоящих из 4 символов и больше, то это попадает под запрос.<br />(в данном случае это сочетание букв&nbsp; &quot;ведр&quot; (из слова ведро).</p></blockquote></div><p>Нет, невозможно такое сделать с помощью SQL запроса.</p>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2008-01-08T11:03:05Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=4231#p4231</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перевод в другой регистр?]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=4227#p4227" />
			<content type="html"><![CDATA[<p>- SELECT *&nbsp; FROM `main` WHERE ASCII(LEFT(`title`, 1)) = ASCII(&#039;A&#039;);</p><p>А как применить это сразу ко всем русским буквам? Это работает только с латиницей?<br />кстати, есть еще один вариант: SELECT * FROM `main` WHERE `title` LIKE BINARY &quot;a%&quot;</p><br /><p>- SELECT * FROM `table` WHERE `field` REGEXP &#039;[a-zA-Z]+&#039;;&nbsp; &nbsp;- это немного не то, нужно чтоб строка содержала только слова на английском языке и символы, а русских букв не содержала вообще.&nbsp; тут &quot;NOT&quot; вроде не работает?</p><div class="quotebox"><cite>Hanut сказал:</cite><blockquote><p>Не понял, что здесь надо сортировать?</p></blockquote></div><p>- Наверное написал ерунду. Хотелось найти такой алгоритм:</p><p>Например: Если строка содержит более 3 совпадений состоящих из 4 символов и больше, то это попадает под запрос.<br />(в данном случае это сочетание букв&nbsp; &quot;ведр&quot; (из слова ведро).</p><p>Т.е. это могут быть любые другие предложения или набор символов, но удовлетворяющие этому условию.</p>]]></content>
			<author>
				<name><![CDATA[nikola0077]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=661</uri>
			</author>
			<updated>2008-01-08T05:18:53Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=4227#p4227</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Перевод в другой регистр?]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=4211#p4211" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>Как можно перевести все первые буквы в верхний регистр?</p></blockquote></div><div class="codebox"><pre><code>UPDATE `table` SET `field` = CONCAT(UPPER(LEFT(`field`, 1)), SUBSTRING(`field`, 2));</code></pre></div><div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>И как отсортировать только строки начинающиеся с заглавных/маленьких букв?</p></blockquote></div><div class="codebox"><pre><code>SELECT *  FROM `main` WHERE ASCII(LEFT(`title`, 1)) = ASCII(&#039;A&#039;);</code></pre></div><div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>Можно ли отсортировать только те строки, которые содержат исключительно латинские буквы?</p></blockquote></div><div class="codebox"><pre><code>SELECT * FROM `table` WHERE `field` REGEXP &#039;[a-zA-Z]+&#039;;</code></pre></div><div class="quotebox"><cite>nikola0077 сказал:</cite><blockquote><p>Как можно отсортировать строки с повторяющимися значениями?</p></blockquote></div><p>Не понял, что здесь надо сортировать?</p>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2008-01-06T13:18:10Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=4211#p4211</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Перевод в другой регистр?]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=4208#p4208" />
			<content type="html"><![CDATA[<p>Здравствуйте, помогите пожалуйста с парой вопросов:</p><p>- Как можно перевести все первые буквы в верхний регистр? И как отсортировать только строки начинающиеся с заглавных/маленьких букв?</p><p>SELECT *&nbsp; FROM `main` WHERE title like &#039;A%&#039;&nbsp; &nbsp; &nbsp;- так вылезают все(заглавные и не заглавные) вперемешку.</p><br /><p>- Можно ли отсортировать только те строки, которые содержат исключительно латинские буквы?</p><br /><p>- Как можно отсортировать строки с повторяющимися значениями?<br /> (нужно почистить заголовки типа:&nbsp; &nbsp;&quot;Продать ведро, продаются ведра ведерные. Дешево.&quot;)</p><p>Заранее спасибо.</p>]]></content>
			<author>
				<name><![CDATA[nikola0077]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=661</uri>
			</author>
			<updated>2008-01-06T03:15:23Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=4208#p4208</id>
		</entry>
</feed>
