ближе к вынести мозг. это запрос с главной страницы на сайте http://puppy.dogs.ru/ в нем много моментов учитывается - платные и бесплтные объявления, продленые и не продленые, сроки, сортировки от вида оплаты .. дохуя всего оодним словом … )))))так не видно что эти 8 строк занимает один запрос))))
сдела попровачку, что бы читать удобнее было.
[//code]
слабоват. учись студент.SELECT `puppy_users`.paytipe AS account_type, `puppy_users`.`type` AS user_type,`puppy_listings`.*, ROUND(DATEDIFF(NOW(),FROM_UNIXTIME(`puppy_listings`.birthdate))/31) AS month_count, `puppy_users`.userdata AS owner_data, `puppy_dogtypes`.name AS typename, `geo_countries`.`country_name` as `country_name` , `geo_cities`.`city_name` as `city_name` FROM `puppy_listings` INNER JOIN `puppy_users` ON `puppy_users`.id=`puppy_listings`.owner INNER JOIN `puppy_dogtypes` ON `puppy_dogtypes`.id=`puppy_listings`.type INNER JOIN `geo_countries` ON `geo_countries`.`country_id`= `puppy_listings`.`country_id` INNER JOIN `geo_cities` ON `geo_cities`.`city_id`= `puppy_listings`.`city_id` WHERE `puppy_listings`.`state`!='closed' AND `puppy_listings`.`time`+86400*IF(`puppy_users`.paytipe <> '',IF(`puppy_users`.paytipe='gold',14,21),7) > UNIX_TIMESTAMP(NOW()) AND `puppy_listings`.`price`>=500 ORDER BY `time` DESC LIMIT 3SELECT `puppy_users`.paytipe AS account_type, `puppy_users`.`type` AS user_type,`puppy_listings`.*, ROUND(DATEDIFF(NOW(),FROM_UNIXTIME(`puppy_listings`.birthdate))/31) AS month_count, `puppy_users`.userdata AS owner_data, `puppy_dogtypes`.name AS typename, `geo_countries`.`country_name` as `country_name` , `geo_cities`.`city_name` as `city_name` FROM `puppy_listings` INNER JOIN `puppy_users` ON `puppy_users`.id=`puppy_listings`.owner INNER JOIN `puppy_dogtypes` ON `puppy_dogtypes`.id=`puppy_listings`.type INNER JOIN `geo_countries` ON `geo_countries`.`country_id`= `puppy_listings`.`country_id` INNER JOIN `geo_cities` ON `geo_cities`.`city_id`= `puppy_listings`.`city_id` WHERE `puppy_listings`.`state`!='closed' AND `puppy_listings`.`time`+86400*IF(`puppy_users`.paytipe <> '',IF(`puppy_users`.paytipe='gold',14,21),7) > UNIX_TIMESTAMP(NOW()) AND `puppy_listings`.`price`>=500 ORDER BY `time` DESC LIMIT 3
я вот щас пытаюсь вникнуть в "это", и задаю себе вопрос "это дуд мне решил вынести мозг, или дал пищу для раздумия"? :DDD
Форум → Программирование → PHP для идиотов → Построить сложный sql запрос.
Построить сложный sql запрос.
Страницы: ← Предыдущая страница • Следующая страница →
-
29 апреля 2009 г. 0:59, спустя 1 минуту 22 секунды
Сапожник без сапог -
29 апреля 2009 г. 1:01, спустя 1 минуту 46 секунд
ближе к вынести мозг. это запрос с главной страницы на сайте http://puppy.dogs.ru/ в нем много моментов учитывается - платные и бесплтные объявления, продленые и не продленые, сроки, сортировки от вида оплаты .. дохуя всего оодним словом … )))))
так не видно что эти 8 строк занимает один запрос))))
сдела попровачку, что бы читать удобнее было.[//code]
слабоват. учись студент.SELECT `puppy_users`.paytipe AS account_type, `puppy_users`.`type` AS user_type,`puppy_listings`.*, ROUND(DATEDIFF(NOW(),FROM_UNIXTIME(`puppy_listings`.birthdate))/31) AS month_count, `puppy_users`.userdata AS owner_data, `puppy_dogtypes`.name AS typename, `geo_countries`.`country_name` as `country_name` , `geo_cities`.`city_name` as `city_name` FROM `puppy_listings` INNER JOIN `puppy_users` ON `puppy_users`.id=`puppy_listings`.owner INNER JOIN `puppy_dogtypes` ON `puppy_dogtypes`.id=`puppy_listings`.type INNER JOIN `geo_countries` ON `geo_countries`.`country_id`= `puppy_listings`.`country_id` INNER JOIN `geo_cities` ON `geo_cities`.`city_id`= `puppy_listings`.`city_id` WHERE `puppy_listings`.`state`!='closed' AND `puppy_listings`.`time`+86400*IF(`puppy_users`.paytipe <> '',IF(`puppy_users`.paytipe='gold',14,21),7) > UNIX_TIMESTAMP(NOW()) AND `puppy_listings`.`price`>=500 ORDER BY `time` DESC LIMIT 3
SELECT `puppy_users`.paytipe AS account_type, `puppy_users`.`type` AS user_type,`puppy_listings`.*, ROUND(DATEDIFF(NOW(),FROM_UNIXTIME(`puppy_listings`.birthdate))/31) AS month_count, `puppy_users`.userdata AS owner_data, `puppy_dogtypes`.name AS typename, `geo_countries`.`country_name` as `country_name` , `geo_cities`.`city_name` as `city_name` FROM `puppy_listings` INNER JOIN `puppy_users` ON `puppy_users`.id=`puppy_listings`.owner INNER JOIN `puppy_dogtypes` ON `puppy_dogtypes`.id=`puppy_listings`.type INNER JOIN `geo_countries` ON `geo_countries`.`country_id`= `puppy_listings`.`country_id` INNER JOIN `geo_cities` ON `geo_cities`.`city_id`= `puppy_listings`.`city_id` WHERE `puppy_listings`.`state`!='closed' AND `puppy_listings`.`time`+86400*IF(`puppy_users`.paytipe <> '',IF(`puppy_users`.paytipe='gold',14,21),7) > UNIX_TIMESTAMP(NOW()) AND `puppy_listings`.`price`>=500 ORDER BY `time` DESC LIMIT 3
я вот щас пытаюсь вникнуть в "это", и задаю себе вопрос "это дуд мне решил вынести мозг, или дал пищу для раздумия"? :DDD
я теперь понял зачем существует отдельная специальность "Проектировка баз данных" -
29 апреля 2009 г. 1:04, спустя 3 минуты 13 секунд
ON pt.group.id
так нельзя :)
эмм… а вот то что дуд показал запрос, там точно так же делается…
там походу опечатка pt.group_id -
29 апреля 2009 г. 1:08, спустя 3 минуты 11 секунд
mario, я бы тебе показал зачем .. ))))Сапожник без сапог -
29 апреля 2009 г. 1:09, спустя 1 минуту 51 секунду
mario, я бы тебе показал зачем .. ))))
еще есть что то страшнее? Оо -
29 апреля 2009 г. 1:12, спустя 3 минуты 3 секунды
$sql=mysql_query("SELECT * FROM `properties_table` AS pt
LEFT JOIN `properties` AS p
ON pt.group_id='$id' AND pt.property_id=p.id
WHERE pt.property_id IS NOT NULL ORDER BY pt.position") or die(mysql_error());
$sql2=mysql_query("SELECT * FROM `properties_table` AS pt
LEFT JOIN `properties` AS p
ON pt.group_id='$id' AND pt.property_id=p.id
WHERE pt.property_id IS NULL ORDER BY p.id") or die(mysql_error());
вот что то так надо, щас буду пробывать :) -
29 апреля 2009 г. 1:26, спустя 13 минут 37 секунд
Unknown column 'pt.property_id' in 'where clause'
почему он это пишет, если данная колонка существует? -
29 апреля 2009 г. 1:27, спустя 33 секунды
он лучше знает. верь серверам ;)
Unknown column 'pt.property_id' in 'where clause'
почему он это пишет, если данная колонка существует?Сапожник без сапог -
29 апреля 2009 г. 1:28, спустя 1 минуту 35 секунд
он лучше знает. верь серверам ;)
Unknown column 'pt.property_id' in 'where clause'
почему он это пишет, если данная колонка существует?
ну а как попросить сервера, что бы он увидел эту колонку? -
-
29 апреля 2009 г. 1:58, спустя 13 минут 57 секунд
$sql=mysql_query("SELECT p.*, pt.property_id, pt.group_id, pt.position, pt.serch, pt.range
FROM `properties_table` AS pt
LEFT JOIN `properties` AS p
ON pt.group_id='$id' AND pt.property_id=p.id
WHERE pt.property_id IS NOT NULL ORDER BY pt.position") or die(mysql_error());
$sql2=mysql_query("SELECT p.*, pt.property_id, pt.group_id, pt.position, pt.serch, pt.range
FROM `properties_table` AS pt
LEFT JOIN `properties` AS p
ON pt.group_id='$id' AND pt.property_id=p.id
WHERE pt.property_id IS NULL ORDER BY p.id") or die(mysql_error());
сделал так, но один фиг Unknown column 'pt.property_id' in 'field list'
блин, я чего то недогоняю… :( -
29 апреля 2009 г. 3:55, спустя 1 час 57 минут 18 секунд
SELECT pt.*, p.*
FROM `krot_realty_properties_table` AS pt LEFT JOIN `krot_realty_properties` AS p
ON pt.group_id='$id' AND pt.properties_id=p.id
WHERE pt.properties_id is NOT NULL ORDER BY pt.position
пиздец я слепой!!! я в шоке…SELECT p.*, pt.*
FROM `properties_table` AS pt
LEFT JOIN `properties` AS p
ON pt.group_id='$id' AND pt.property_id=p.id
WHERE pt.property_id IS NULL ORDER BY p.idSELECT pt.*, p.*
FROM `krot_realty_properties_table` AS pt LEFT JOIN `krot_realty_properties` AS p
ON pt.group_id='$id' AND pt.properties_id=p.id
WHERE pt.properties_id is NOT NULL ORDER BY pt.position -
-
29 апреля 2009 г. 8:50, спустя 1 минуту 17 секунд
mario, ночью надо спать)
:)))
самое смешное, я же еще с вечера начал эту фигню делать… :) -
29 апреля 2009 г. 22:19, спустя 13 часов 28 минут 26 секунд
100 раз уже ссылку приводили… http://www.codinghorror.com/blog/archives/000976.htmlhttps://smappi.org/ - платформа по созданию API на все случаи жизни
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!