UPDATE b_uts_crm_company
SET UF_CRM_1696186645 = (SELECT b_crm_company.REVENUE
FROM b_crm_company
where b_crm_company.ID = b_uts_crm_company.VALUE_ID)
а код уже перевалил за 200 строк
Нормально ли писать программу одним большим файлом?
Может посоветуете книгу
select
ar.id,
ar.name,
ar.date,
ar.text,
ap.property_id,
p.name as property_name, --поскольку у вас есть в базе реализовано универсальное хранение свойств, то почему бы не вывести имя свойства из справочника?
ap.value as property_value
from articles as ar
left join articles_property as ap on ap.article_id = ar.id
and ap.property_id in (/* перечисляем все необходимые свойства */)
left join property as p on ap.property_id = p.id -- справочник названий свойств
select
ar.id,
ar.name,
ar.date,
ar.text,
(select value
from articles_property as ap
where ap.article_id = ar.id
and ap.property_id = 10) as author
from articles as ar
$protocol = $_SERVER['HTTPS'] == 'on' ? 'https' : 'http';
$host = $_SERVER['HTTP_HOST'];
$path = $_SERVER['SCRIPT_NAME'];
/****/
// Что-то сделать с $protocol, $host, $path а может что-то еще забрать из $_GET, $_POST, $_FILES....
/****/
header('location: '.$protocol.'://'.$host.$path);
Воткнул китайский ноунейм, на чипсете MT7601
Решил спросить в комментариях YouTube совета, сказали не брать 4060 или 4060 ti на 8 или даже 16 GB потому что там шина 128 бит урезанная, и по сути от PCIe x16 нет никакого толка, якобы "будет всё работать нормально но только как по x8".
4060 или 4060 ti на 8 или даже 16 GB
Там вроде чипы vram говорят распаяны с обратной стороны платы, причём на те же ножки, в простую, с обратной стороны текстолита, и какой в этом минус, если перегрева особого от этого не происходит
Как по мне, карта вроде хорошая, если учесть что это не замена 3060 а встройки 12 поколения, и если учесть что она и без DLSS потребляя 115 ватт лучше по производительности на 5-15% чем предыдущее поколение, за те же деньги
$rows = /* тут выполняется запрос для получения данных */;
$out_data = []; // массив выходных данных
foreach($rows as $row)
{
$order = &$out_data[$row['order_id']]; // ссылка на элемент массива заказа
$order['order_id'] = $row['order_id'];
$order['firstname'] = $row['firstname'];
$order['lastname'] = $row['lastname'];
$order['telephone'] = $row['telephone'];
if(!isset($order['products'])) $order['products'] = []; // этот if нужен, если обязательно наличие ключа products с пустым массивом, если в выборке возможны пустые реквизиты продукта.
if(!is_null($row['product_id']))
{
$product = &$order['products'][$row['product_id']]; // делаем ссылку на элемент массива products с уникальным ключом product_id
$product['product_id'] = $row['product_id'];
$product['sku'] = $row['sku'];
$product['quantity'] = $row['quantity'];
// ... таким же способом можно делать более глубокие ссылки в product, если в этом элементе понадобится массив данных
unset($product); // уничтожайте ссылку в конце цикла, иначе не сможете переиспользовать переменную $product за циклом.
}
unset($order);
}
-- премиум выборка
select 1 as priv_type, -- тип привилегии 1 - премиум объявление
C.*
from
(
select B.*,
dense_runk() over (order by B.user_id) as user_num, -- нумеруем авторов объявлений
row_number() over (partition by B.user_id order by rownum) as add_num -- нумеруем объявление в пределах автора
from
( -- достаем премиум объявления в случайной сортировке
select A.*
from A
where premium_pay_date is not null and sysdate - premium_pay_date <= 3 -- условие попадания в премиум
order by DBMS_RANDOM.RANDOM
) B
) C
where user_num <= 5 -- берем 5 авторов
and add_num = 1 -- по одному объявлению от автора
union
-- обычная выборка
select 2 as priv_type, -- тип привилегии 2 - обычное объявление
A.*,
-- зануляем доп. поля от премиум, чтобы union работал корректно
null user_num,
null add_num
from A
where premium_pay_date is null or sysdate - premium_pay_date > 3 -- можно исключить премиум из общей выборки, а можно не исключать
order by priv_type, Publication_Date desc