UPDATE tbl SET
number=(@cnt:=@cnt+1)
WHERE !@cnt:=0
ORDER BY id DESC
WITH recursive hours (n) AS (
SELECT (@q:=0) n FROM dual
UNION ALL
SELECT (@q:=@q+1) n FROM hours WHERE @q<24
)
SELECT hours.n, ваш_запрос.* FROM ваш_запрос
RIGHT JOIN hours ON ваш_запрос.час = hours.n
WITH recursive hours (n) AS (
SELECT CONCAT("0",CAST(@q:=0 as varchar(1))) n FROM dual
UNION ALL
SELECT LPAD(CAST(@q:=@q+1 as varchar(2)),2,"0") n FROM hours WHERE @q<24
)
SELECT hours.n, ваш_запрос.* FROM ваш_запрос
RIGHT JOIN hours ON ваш_запрос.час = hours.n
ALTER TABLE table AUTO_INCREMENT = 100
WITH discussion_count AS (
SELECT count(*) cnt FROM discussion WHERE author_id=?
),
discussion_messages_count AS (
SELECT count(*) cnt FROM discussion_messages WHERE author_id=?
)
SELECT
p.name, dc.cnt discussions, dmc.cnt dcount
FROM people p, discussion_count dc, discussion_messages_count dmc
WHERE p.id=?
WITH news_images AS (
SELECT news.id news_id, min(images.id) images_id FROM news
LEFT JOIN images ON news.id=images.id
GROUP BY news.id
LIMIT 10
)
SELECT news.*,images.*
FROM news_images
JOIN news ON news.id=news_images.news_id
JOIN images ON images.id=news_images.images_id
WITH check_user as (
SELECT :user_id IN (18,104,1,15) check_id FROM dual
),
main_query as (
SELECT
kpi.id,
GROUP_CONCAT(users_to_groups.user_id) AS test_1,
SUM(:user_id=users_to_groups.user_id) AS test_3
FROM kpi
LEFT JOIN kpi_watchers_groups ON kpi_watchers_groups.kpi_id = kpi.id
LEFT JOIN users_to_groups ON users_to_groups.data_id = kpi_watchers_groups.group_id
GROUP BY kpi.id
)
SELECT
main_query.*,
check_user.check_id test_2
FROM main_query
CROSS JOIN check_user
SELECT * FROM table WHERE field=CURRENT_DATE + INTERVAL 5 DAY
JOIN users S on S.id=IF(93=sender_id, sender_id, recipient_id)
JOIN users R on R.id=IF(93=recipient_id, sender_id, recipient_id)
$db->query("SELECT * FROM " . PREFIX . "_games
WHERE
NOT gligue_id = '438'
AND (
game_date = '".date("Y-m-d", time())."'
OR
(game_date = '".date("Y-m-d", strtotime('-1 days'))."'
AND game_status = 2)
)")
INSERT INTO `tel_incoming` (`id`, `caller_tel`, `record`) VALUES (
5153677,
substring('/records/1549452962.119426_2019-02-06_143602_79685901405_79219262138.wav', 46, 11),
'/records/1549452962.119426_2019-02-06_143602_79685901405_79219262138.wav'
)
SELECT DISTINCT
p_id,
CASE WHEN temp.var = 0 THEN from_id ELSE to_id END user_id
FROM table
CROSS JOIN (SELECT 0 var FROM DUAL UNION ALL SELECT 1 var FROM DUAL) temp
p_id user_id
5 1
5 2
SELECT
*,
SUBSTRING(mes, 1, 30) AS `mes`,
DATE_FORMAT(date120, '%d.%m.%Y, %H:%i') as date_mes2
WHERE user_id=:login OR user_idor=:login
ORDER BY id DESC
LIMIT 1
with carts_goods_id as (
select distinct goods_id from carts where owner_id=?
)
select
goods.*,
case when carts_goods_id.goods_id is not null
then 'в корзине'
else ''
end carts_mark
from goods
left join carts_goods_id on goods.goods_id=carts_goods_id.goods_id