|
|
|
| Выборка из поля данных типа "TEXT", 100 первых символов, например что бы только часть текста извлечь. помогите плиз только если можно поподробнее. | |
|
|
|
|
|
|
|
для: mark
(02.08.2005 в 16:54)
| | Здесь никаких сложностей нет, MySQL обладает набором встроенных функций, схожих с функциями языков программирования вроде PHP. Поэтому если в таблице tbl у вас имеется столбец col типа TEXT, вы можете извлечь первые 100 символов при помощи запроса
SELECT SUBSTRING(col,1,100) FROM tbl
|
Встроенная функция SUBSTRING() вырежет из col подстроку длиной 100 символов, начиная с позиции 1. | |
|
|
|
|
|
|
|
для: cheops
(02.08.2005 в 19:54)
| | Спасибо! | |
|
|
|
|
|
|
|
для: cheops
(02.08.2005 в 19:54)
| | а если тип таблици datetime? как выдернуть год? | |
|
|
|
|
|
|
|
для: BArt Simpson
(21.09.2005 в 14:22)
| |
SELECT YEAR(col1) FROM tbl
|
| |
|
|
|
|
|
|
|
для: cheops
(22.09.2005 в 00:21)
| |
SELECT YEAR (datetime) FROM menpost GROUP BY datetime ORDER BY YEAR (datetime) DESC
|
и выводит
2005
2005
2005
2005
2005
2004
2004
2004
как сгрупперовать? | |
|
|
|
|
|
|
|
для: cheops
(22.09.2005 в 00:21)
| | стормозил
SELECT YEAR (datetime) FROM menpost GROUP BY YEAR (datetime) ORDER BY YEAR (datetime) DESC | |
|
|
|
|
|
|
|
для: BArt Simpson
(22.09.2005 в 12:31)
| | А день почему-то не выбирается??
SELECT DAY (datetime) FROM menpost GROUP BY DAY (datetime) ORDER BY DAY (datetime) DESC
|
| |
|
|
|
|
|
|
|
для: BArt Simpson
(22.09.2005 в 12:44)
| | Для вывода дней существует много функций
DAYNAME() - для дня недели
DAYOFMONTH() - для дня месяца
DAYOFWEEK() - для номера дня недели
DAYOFYEAR() - для для года
Функция DAY() как псевдоним функции DAYOFMONTH() введена только начиная с MySQL 4.1. | |
|
|
|
|
|
|
|
для: cheops
(22.09.2005 в 14:57)
| |
$sql="SELECT DAYOFMONTH (datetime) FROM menpost GROUP BY DAYOFMONTH (datetime) ORDER BY DAYOFMONTH (datetime)";
$deyq=mysql_query("$sql");
while($menpost= mysql_fetch_array($deyq))
{
if ($menpost[0]=="$day")
{
$day=$day."<option value=\"$menpost[0]\" selected>$menpost[0]</option>";
}
else{$day=$day."<option value=\"$menpost[0]\">$menpost[0]</option>";}
}
|
не работает !
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /путь/файл.php on line 732 | |
|
|
|
|
|
|
|
для: BArt Simpson
(22.09.2005 в 16:07)
| | Для внутренних функций MySQL не допускается пробел между именем функции и круглыми скобками, т.е. следует писать следующим образом
<?php
$sql="SELECT DAYOFMONTH(datetime) FROM menpost GROUP BY DAYOFMONTH (datetime) ORDER BY DAYOFMONTH(datetime)";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(23.09.2005 в 00:57)
| | ОК, Спасибо, заработало. :)))))))
А теперь выбрать данные по дате :))))
вот это не работает
<?
$sql="SELECT * FROM menpost WHERE DATE(datetime)='$byear-$bmonth-$bday' ORDER BY datetime DESC";
?>
|
и это тоже
<?
$sql="SELECT * FROM menpost WHERE DATE(datetime)='".$byear."-".$bmonth."-".$bday."' ORDER BY datetime DESC";
?>
|
| |
|
|
|
|
|
|
|
для: BArt Simpson
(23.09.2005 в 12:21)
| | А какой тип у datetime? | |
|
|
|
|
|
|
|
для: cheops
(23.09.2005 в 15:03)
| | собственно такой же datetime
ГГГГ-ММ-ДД ЧЧ:мм:СС | |
|
|
|
|
|
|
|
для: BArt Simpson
(23.09.2005 в 15:20)
| | А какая у вас версия MySQL? Ведь функция DATE() появилась только начиная с 4.1.1, а у вас судя по тому, что не рабтает DAY() версия ниже? | |
|
|
|
|
|
|
|
для: mark
(02.08.2005 в 16:54)
| | А можно выбрать из поля данных типа "VarChar" Символы до знака "-"
прим. "Директоия - поддиректория"
на выходе "Директоия " | |
|
|
|
|
|
|
|
для: BArt Simpson
(22.09.2005 в 12:56)
| | а если $array=explode("-",твоя строка);
ну а потом просто первый элемент этого массива echo $array[0]; | |
|
|
|
|
|
|
|
для: himic
(25.09.2005 в 21:38)
| | С датами я так мудохался!
echo date("[d.m.Y | H:i:s]", strtotime($arr["data"])); //чтобы вывести в удобном формате | |
|
|
|