Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1643 connectés 

 


Débat n°1




Attention si vous cliquez sur "voir les résultats" vous ne pourrez plus voter

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  20  21  22  23  24  25
Page Suivante
Auteur Sujet :

BlaBla@SQL

n°2355221
mechkurt
Posté le 04-06-2020 à 14:25:35  profilanswer
 

Reprise du message précédent :
Oui ^^
J'ai crut pouvoir gruger en mettant le MAX dans le groupe principal mais comme l'alias ne fonctionne pas ça ne sert à rien...
Mon pavé au dessus c'était pour répondre à flo850 qui proposait une solution sans INNER JOIN (SELECT), qui est peut être plus performante, faudrait tester, mais je suis content de découvrir l'astuce des alias permettant de rendre "accessible" des clause provenant de GROUP BY, je suis sur que ça me resservira ! [:azitwaz]


---------------
D3
mood
Publicité
Posté le 04-06-2020 à 14:25:35  profilanswer
 

n°2384125
Pzu
Posté le 07-05-2021 à 02:14:56  profilanswer
 

Bonjour bonnes gens, je mets ça ici mais je sens que c'est plutôt dans la section VB/VBA que je vais devoir aller :o

 

Je vais simplifier au maximum : imaginons que j'ai une table Produits (avec juste un Id et un libellé), et une table d'historique des Transactions (avec, disons, la référence à l'id du produit, un nom d'acheteur, et une date pour la forme). Rien de compliqué, ni même dans qu'il faut obtenir : avoir l'historique des transactions par produit. Une bête requête et on aura le résultat sous cette forme (prenons des denrées très rares pour l'exemple :o ) :

 
Code :
  1. ID          Produit    Acheteur  Date d'achat
  2. ========== ========== ========== ===========
  3.         01 RTX3080     HFRien_A   2021-06-01
  4.         01 RTX3080     HFRien_B   2021-05-01
  5.         02 RX6800      HFRien_C   2021-04-01
  6.         03 RTX3060     HFRien_D   2021-03-01
  7.         03 RTX3060     HFRien_E   2021-02-01
 

Maintenant, pour des raisons diverses et variées ( :o ), j'ai besoin d'un résultat sous cette forme là dans un export en fichier texte brut en fixed-width pour chaque champ :

 
Code :
  1. 01 RTX3080   
  2. HFRien_A   2021-06-01
  3. HFRien_B   2021-05-01
  4.      
  5. 02 RX6800     
  6. HFRien_C   2021-04-01
  7.        
  8. 03 RTX3060   
  9. HFRien_D   2021-03-01
  10. HFRien_E   2021-02-01
 

--> En gros, avoir un groupement par produit, mais pas sous un bête GROUP BY classique : le produit doit apparaître une seule fois, et en dessous on doit avoir l'historique des achats.

 

On est bien d'accord qu'il n'y a rien en SQL qui me permette d'obtenir ça, right ?  [:zyzz:2]
(En standard, j'entends. J'ai pas accès à quoique ce soit qui me permette de faire du T/PL-SQL ou autre truc plus avancé. On va dire que je serai limité à Access :o )

 

J'ai tenté de bricoler en VBA, mais je crois que c'est mort, j'suis trop mauvais pour ça  [:leve le pied jeannot:4]


Message édité par Pzu le 07-05-2021 à 02:38:06
n°2384142
rufo
Pas me confondre avec Lycos!
Posté le 07-05-2021 à 08:26:51  profilanswer
 

Non, tu ne pourras pas avoir cette forme avec du SQL pour la bonne et simple raison que les colonnes so différentes :
La première ligne, t'as le nom du produit et c'est (tout), 1 colonne donc et les lignes suivantes, 2 colonnes portant sur des champs différents.
Un BD, c'est fait pour du stockage de données et leur recherche/extraction et éventuellement du traitement mais pas pour de la mise en forme :o


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2384222
Pzu
Posté le 07-05-2021 à 14:31:13  profilanswer
 

Ok merci, c'est bien ce que je me disais :jap:
Bon, bah j'vais voir pour bricoler un truc en VBA :o

n°2384338
skeye
Posté le 07-05-2021 à 17:35:29  profilanswer
 

rufo a écrit :

Non, tu ne pourras pas avoir cette forme avec du SQL pour la bonne et simple raison que les colonnes so différentes :
La première ligne, t'as le nom du produit et c'est (tout), 1 colonne donc et les lignes suivantes, 2 colonnes portant sur des champs différents.
Un BD, c'est fait pour du stockage de données et leur recherche/extraction et éventuellement du traitement mais pas pour de la mise en forme :o


Je suis sûr que c'est faisable avec des natasseries oracle :o


---------------
Can't buy what I want because it's free -
n°2384347
flo850
moi je
Posté le 07-05-2021 à 18:52:28  profilanswer
 

en postgresql avec des array_agg bien sales aussi, mais c'est vraiment tordre le truc


---------------

n°2384348
masklinn
í dag viðrar vel til loftárása
Posté le 07-05-2021 à 19:15:58  profilanswer
 

flo850 a écrit :

en postgresql avec des array_agg bien sales aussi, mais c'est vraiment tordre le truc


array_agg va te permettre de collecter les données (et c'est pas bien sale pour le coup) mais pour le formattage faudrait du PL parce-que le groupby sortirait un truc style
 
01, RTX3080, ARRAY[ARRAY[HFRien_A, 2021-06-01], ARRAY[HFRien_B, 2021-05-01]]
02, RX6800, ARRAY[ARRAY[HFRien_C, 2021-04-01]]
03, RTX3060, ARRAY[ARRAY[HFRien_D, 2021-03-01], ARRAY[HFRien_E, 2021-02-01]]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°2384394
flo850
moi je
Posté le 07-05-2021 à 21:14:43  profilanswer
 

après tu colles les tableaux avec des sauts de lignes
 
Mais je pense qu'il vaut mieux un bout de langage de script pour faire ça


---------------

n°2384403
masklinn
í dag viðrar vel til loftárása
Posté le 07-05-2021 à 21:48:01  profilanswer
 

flo850 a écrit :

après tu colles les tableaux avec des sauts de lignes


À coup de string_add sur la subquery? Je comprend mieux ta déclaration que ce serait sale, effectivement :D


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°2384419
rufo
Pas me confondre avec Lycos!
Posté le 07-05-2021 à 22:36:30  profilanswer
 

skeye a écrit :


Je suis sûr que c'est faisable avec des natasseries oracle :o


Je ne dis pas que c'est impossible,je dis juste que c'est pas fait pour. Je suis old-school. Une BD, c'est pas censé faire du traitement, la logique métier, c'est l'appli qui doit s'en charger. La BD doit juste faire le stockage en l'optimisant et permettre la recherche, le CRUD et l'extraction des données rapidement. C'est déjà pas mal :o
Perso, je suis pas fan de tout ce qui est trigger et procédures stockées. Commencer à mettre de l'applicatif dans la BD, séparé du reste du code de l'appli, c'est un bon moyen de créer des pbs je trouve...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
mood
Publicité
Posté le 07-05-2021 à 22:36:30  profilanswer
 

n°2384422
masklinn
í dag viðrar vel til loftárása
Posté le 07-05-2021 à 22:59:00  profilanswer
 

rufo a écrit :


Je ne dis pas que c'est impossible,je dis juste que c'est pas fait pour. Je suis old-school. Une BD, c'est pas censé faire du traitement, la logique métier, c'est l'appli qui doit s'en charger.


C’est plus du middle-scool ou du new-school en fait, tu remarqueras que les DBS nosql tu peux rien faire dedans, mais les RDBMS les plus big-iron ont toutes des extensions procédurales :D


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°2384425
skeye
Posté le 07-05-2021 à 23:48:31  profilanswer
 

masklinn a écrit :


C’est plus du middle-scool ou du new-school en fait, tu remarqueras que les DBS nosql tu peux rien faire dedans, mais les RDBMS les plus big-iron ont toutes des extensions procédurales :D


Clairement, le vrai old school c'est du Oracle forms/reports où l'installation de l'environnement de développement demande déjà de créer un schéma dans une base Oracle...


---------------
Can't buy what I want because it's free -
n°2384450
rufo
Pas me confondre avec Lycos!
Posté le 08-05-2021 à 09:10:03  profilanswer
 

masklinn a écrit :


C’est plus du middle-scool ou du new-school en fait, tu remarqueras que les DBS nosql tu peux rien faire dedans, mais les RDBMS les plus big-iron ont toutes des extensions procédurales :D


Je parlais du old-old-school :D Avant qu'Oracle & co se mettent à inventer les procédures stockées, du temps où une BD faisait que ce que je décrivais, genre Paradox (oui, c'est pas tout jeune  :whistle: ). Après, y'a eu ce que tu décrivais et aujourd'hui on en revient. Bref, comme souvent, mouvement de balancier : on commence sur une tendance puis on va vers une autre à l'opposée puis on revient en arrière et ainsi de suite jusqu'à trouver le bon équilibre.
 
UN peu comme avec l'Objet où une catégorie de dév en revient et des langages comme Python qui ont pas mal alléger le concept qui était devenu trop complexe/lourd en C++/Java (par ex).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2442615
raph0ux
Amateur de PC
Posté le 15-03-2023 à 16:05:54  profilanswer
 

Je viens de passer 25 minutes à écrire un post décrivant mon problème, tout ça pour finir par le résoudre en 30 secondes une fois le post terminé.
 
Merci à tous pour votre aide :o


---------------
Topic A/V : Clavier Corsair K65 /// Poussette Trio Peg Perego
n°2442617
TheCreator
zwiiiii and then shbrouk tak
Posté le 15-03-2023 à 16:06:47  profilanswer
 

classique :D
 
gg :o


---------------
La superstition c'est comme ceux qui réparent les fauteuils, il faut que le bois qu'ils rajoutent soit à peu près comme l'autre bois sinon ça se voit trop.
n°2442622
rufo
Pas me confondre avec Lycos!
Posté le 15-03-2023 à 17:53:58  profilanswer
 

Oui, un grand classique. Ou alors, tu postes ta question et quelques minutes après, tu finis par trouver la solution par toi-même  :ange:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2442658
poulpeleac​h
Octopus paradisi
Posté le 16-03-2023 à 10:46:15  profilanswer
 

rufo a écrit :

Oui, un grand classique. Ou alors, tu postes ta question et quelques minutes après, tu finis par trouver la solution par toi-même  :ange:


 
C'est plus ou moins du rubber duck debugging : https://en.wikipedia.org/wiki/Rubber_duck_debugging


---------------
Les lacets le gravier et dans l'air du soir , la Chrysler s'envole dans les fougères et les nénuphars
n°2442662
rufo
Pas me confondre avec Lycos!
Posté le 16-03-2023 à 11:13:55  profilanswer
 

Merci, je ne connaissais pas.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2442722
raph0ux
Amateur de PC
Posté le 16-03-2023 à 19:24:13  profilanswer
 

Excellent :D
 
J'avais tenté le coup en expliquant à ma copine sans lui donner le moindre contexte, ça ne m'avait pas aidé ceci-dit :lol:


---------------
Topic A/V : Clavier Corsair K65 /// Poussette Trio Peg Perego
n°2450617
StanCW
Parle à Monkey ...
Posté le 04-07-2023 à 21:05:09  profilanswer
 

Bijour les gens , ce lancer dans du sqlite pour un ptit projet , folie ou y'a mieux ?  
 
je cherche à pouvoir rentrer des truc dans une base de donnée dont j'aurais décider de la structure avec un moyen graphique de manipuler certaine donnée , extraction vers des formats de gueux inclus (csv, json , xml).
 
pour l'instant je trouve que slite et SQLite GUI tools pourrais faire le job, la bdd je la gère en conf sous GIT de façon régulière et c'est marre ?
 


---------------
... ma tête est malade -  "Est-ce que ce bruit dans ma tête te dérange?"
n°2450619
masklinn
í dag viðrar vel til loftárása
Posté le 04-07-2023 à 21:22:33  profilanswer
 

Dépend de l'échelle du projet, sqlite marche très bien tant que t'as pas trop trop d'écritures (même en mode WAL ça reste single-writer). Si t'as quasiment que des lectures tu peux faire des milliers de requêtes (SQL) par seconde.

 

Selon ton archi, tu peux vouloir envoyer toutes les écritures sur une queue pour t'assurer qu'un seul thread ou process écrit à la fois, si non une option commune est BEGIN IMMEDIATE si tu sais que tu vas avoir besoin d'écriture (autrement la connection est upgradée de READ à WRITE au besoin ce qui peut être bof), penser à regarder ce que ton driver de DB met comme busy_timeout, et à le configurer si c'est le défaut (0).


Message édité par masklinn le 04-07-2023 à 21:24:05

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°2450624
StanCW
Parle à Monkey ...
Posté le 04-07-2023 à 22:08:00  profilanswer
 

Effectivement j'ai oublié de préciser : c'est pas du tout pour un acces web par plusieurs personnes en meme temps.
 
en fait c'est pour remplacer un putain de fichier Excel partagé assez gros et horrible à manipuler (~10k lignes avec pas mal d'onglet)


---------------
... ma tête est malade -  "Est-ce que ce bruit dans ma tête te dérange?"
n°2451301
mechkurt
Posté le 17-07-2023 à 15:54:28  profilanswer
 

C'est quoi le best practice pour trier des résultats dans une jointure, la sous requête ?
J'ai 16 000 produits et 4000 catégories repartis dans une dizaine de shop (en tout environ 200k+ association produits a des catégories).
Pour m'y retrouver dans le classement de produits je voudrais les catégories de niveau le plus profond possible, pacque oui le produit peut être à la fois dans la racine "jouet" et dans son enfant "maquette" voir même dans sa sous sous categorie "maquette d'avion", pour mon export maquette d'avion est plus qualifiant.
Soyons plus concret :

Code :
  1. SELECT prod.*, categ.`name`
  2. FROM `product` prod
  3. INNER JOIN `category_product` catprod ON catprod .`product_id` = prod.`entity_id`
  4. INNER JOIN `category` categ ON categ .`entity_id` = catprod.`category_id`
  5. WHERE 1
  6. GROUP BY prod.`entity_id`


A l'heure actuelle le SGBD choppe bien la catégorie qu'il veut bien trouver...
Sachant aussi que bien sur, le level est au niveau de la category (ce que je voudrais trier, pour garder la catégorie ayant le chiffre le plus élevé).
 
La solution optimal à votre avis ce serait de faire un truc de ce genre ?

Code :
  1. SELECT prod.*, categ.`name`
  2. FROM `product` prod
  3. INNER JOIN `category` categ ON categ .`entity_id` = ( SELECT catprod.`category_id`
  4.                                                      FROM `category` categ
  5.                                                      INNER JOIN `category_product` catprod ON catprod .`product_id` = prod.`entity_id`
  6.                                                      WHERE 1
  7.                                                      ORDER BY categ.`level` DESC
  8.                                                      LIMIT 1 )
  9. WHERE 1


Bon en vrai mon problème sera plus compliqué car c'est un magento < 2 et les données sont soient dans des tables varchar / int / text / etc., ou alors dans une table d'index mais y'en a 10 (une par boutique).

Message cité 1 fois
Message édité par mechkurt le 17-07-2023 à 18:16:11

---------------
D3
n°2451302
skeye
Posté le 17-07-2023 à 16:02:33  profilanswer
 

mechkurt a écrit :

C'est quoi le best practice pour trier des résultats dans une jointure, la sous requête ?
J'ai 16 000 produits et 4000 catégories repartis dans une dizaine de shop (en tout environ 200k+ association produits a des catégories).
Pour m'y retrouver dans le classement de produits je voudrais les catégories de niveau le plus profond possible, pacque oui le produit peut être à la fois dans la racine "jouet" et dans son enfant "maquette" voir même dans sa sous sous categorie "maquette d'avion", pour mon export maquette d'avion est plus qualifiant.
Soyons plus concret :

Code :
  1. SELECT prod.*, categ.`name`
  2. FROM `product` prod
  3. INNER JOIN `category_product` catprod ON catprod .`product_id` = prod.`entity_id`
  4. INNER JOIN `category` categ ON categ .`entity_id` = catprod.`category_id`
  5. WHERE 1
  6. GROUP BY prod.`entity_id`


A l'heure actuelle le SGBD choppe bien la catégorie qu'il veut bien trouver...
Sachant aussi que bien sur, le level est au niveau de la category (ce que je voudrais trier, pour garder la catégorie ayant le chiffre le plus élevé).

 

La solution optimal à votre avis ce serait de faire un truc de ce genre ?

Code :
  1. SELECT prod.*, categ.`name`
  2. FROM `product` prod
  3. INNER JOIN `category` categ ON categ .`entity_id` = ( SELECT catprod.`category_id`
  4.                                                       FROM `category` categ
  5.                                                       INNER JOIN `category_product` catprod ON catprod .`product_id` = prod.`entity_id`
  6.                                                       WHERE 1
  7.                                                       ORDER BY categ.`level` DESC
  8.                                                       LIMIT 1 )
  9. WHERE 1


Bon en vrai mon problème sera plus compliqué car c'est un magento < 2 et les données sont soient dans des tables varchar / int / text / etc., ou alors dans une table d'index mais y'en a 10 (une par boutique).

 

un truc du genre?

 
Code :
  1. SELECT prod.*, categ.`name`
  2. FROM `product` prod
  3. INNER JOIN `category_product` catprod ON catprod .`product_id` = prod.`entity_id`
  4. INNER JOIN `category` categ ON categ .`entity_id` = catprod.`category_id`
  5. LEFT OUTER JOIN `category` categ2 ON categ2 .`entity_id` = catprod.`category_id` AND  categ2.level > categ.level
  6. WHERE categ2.id IS NULL
 


Message édité par skeye le 17-07-2023 à 16:02:50

---------------
Can't buy what I want because it's free -
n°2451303
skeye
Posté le 17-07-2023 à 16:08:00  profilanswer
 

(il manque un left join, là, il faut doubler le lien category_product aussi, je suis allé trop vite)

 

[edit]

 

plutôt ça si je me suis pas encore planté, donc

 
Code :
  1. SELECT prod.*, categ.`name`
  2. FROM `product` prod
  3. INNER JOIN `category_product` catprod ON catprod .`product_id` = prod.`entity_id`
  4. INNER JOIN `category` categ ON categ .`entity_id` = catprod.`category_id`
  5. LEFT OUTER JOIN `category_product` catprod2 ON catprod2 .`product_id` = prod.`entity_id`
  6. LEFT OUTER JOIN `category` categ2 ON categ2 .`entity_id` = catprod2.`category_id` AND  categ2.level > categ.level
  7. WHERE categ2.id IS NULL
 


Au lieu d'une sous-requête pour chercher le niveau le plus haut on rajoute de quoi filtrer pour ne prendre que les cats pour lesquelles il n'existe de de lien vers une autre cat avec un level plus élevé. :D


Message édité par skeye le 17-07-2023 à 16:10:55

---------------
Can't buy what I want because it's free -
n°2451310
poulpeleac​h
Octopus paradisi
Posté le 17-07-2023 à 18:10:18  profilanswer
 

Un truc du genre?  Je sais pas si substr est le bon operateur pour ton SGBD  
 
 
 

Code :
  1. SELECT prod.*,  substr(max(categ.`level`+10000000000 + categ.`name`) , 10 )
  2. FROM `product` prod
  3. INNER JOIN `category_product` catprod ON catprod .`product_id` = prod.`entity_id`
  4. INNER JOIN `category` categ ON categ .`entity_id` = catprod.`category_id`
  5. WHERE 1
  6. GROUP BY prod.`entity_id`


 
L'idée du level+10000000000  est qu a priori y a peu de chance que tu aies des level > 10000000000  
Donc le max(level+10000000000+name) te renverra un truc du genre "100000135478maquetted'avion" si le level de maquetted'avion est 135478 .
Et ensuite tu enleves les chiffres avec le substr  


---------------
Les lacets le gravier et dans l'air du soir , la Chrysler s'envole dans les fougères et les nénuphars
n°2451316
skeye
Posté le 17-07-2023 à 19:27:20  profilanswer
 

poulpeleach a écrit :

Un truc du genre?  Je sais pas si substr est le bon operateur pour ton SGBD  
 
 
 

Code :
  1. SELECT prod.*,  substr(max(categ.`level`+10000000000 + categ.`name`) , 10 )
  2. FROM `product` prod
  3. INNER JOIN `category_product` catprod ON catprod .`product_id` = prod.`entity_id`
  4. INNER JOIN `category` categ ON categ .`entity_id` = catprod.`category_id`
  5. WHERE 1
  6. GROUP BY prod.`entity_id`


 
L'idée du level+10000000000  est qu a priori y a peu de chance que tu aies des level > 10000000000  
Donc le max(level+10000000000+name) te renverra un truc du genre "100000135478maquetted'avion" si le level de maquetted'avion est 135478 .
Et ensuite tu enleves les chiffres avec le substr  


 
Je comprends pas bien ce que t'essayes de faire [:gratgrat]
Le résultat va dépendre de la longueur du champ categ.name là non? [:autobot]


---------------
Can't buy what I want because it's free -
n°2451326
poulpeleac​h
Octopus paradisi
Posté le 18-07-2023 à 10:28:39  profilanswer
 

Suppose que tu aies 2 categ pour ton produit :
- une avec level = 103 en name = "truc"
- une avec level = 12 en name = "machin"
=> categ.`level`+10000000000 + categ.`name`donne
10000000103truc
10000000012machin

 

Quand je teste sur Oracle, la max donne 10000000103truc
Et avec
10000000103machin
10000000012truc
la max donne 10000000103machin
Donc, au moins sur Oracle, le tri lexicographique privilégie bien le nombre au début de la chaine de car. plutot que la longueur de la chaine  , et du coup ca marche
Mon test :

 
Code :
  1. select max(test),
  2.        substr(max(test),12) as categ_max
  3. from (
  4.        select '10000000103truc' as test from dual
  5.        union
  6.        select '10000000012machin' as test from dual
  7. )


> categ_max = truc

 
Code :
  1. select max(test),
  2.        substr(max(test),12) as categ_max
  3. from (
  4.        select '10000000103machin' as test from dual
  5.        union
  6.        select '10000000012truc' as test from dual
  7. )


> categ_max = machin


Message édité par poulpeleach le 18-07-2023 à 10:31:35

---------------
Les lacets le gravier et dans l'air du soir , la Chrysler s'envole dans les fougères et les nénuphars
n°2451332
skeye
Posté le 18-07-2023 à 11:31:52  profilanswer
 

ok, à voir si ça se comporte pareil sur tous les sgbd. :D
 
Je préfère quand même ma solution cela dit [:doc petrus]


---------------
Can't buy what I want because it's free -
n°2451333
poulpeleac​h
Octopus paradisi
Posté le 18-07-2023 à 11:37:41  profilanswer
 

La mienne est plus performante en principe


---------------
Les lacets le gravier et dans l'air du soir , la Chrysler s'envole dans les fougères et les nénuphars
n°2451335
skeye
Posté le 18-07-2023 à 11:55:10  profilanswer
 

poulpeleach a écrit :

La mienne est plus performante en principe


 
Faut voir, tu fais un max sur une chaine calculée donc pas indexée, contre des jointures sur des ids...


---------------
Can't buy what I want because it's free -
n°2451347
mechkurt
Posté le 18-07-2023 à 14:23:35  profilanswer
 

Merci à vous deux, je vais tester vos pistes, si je trouve le temps (et la motivation [:nedurb] ) je ferais un bench des différente solution.
C'est pour du web donc je penses qu'on est sur sur MariaDB...


Message édité par mechkurt le 18-07-2023 à 14:24:36

---------------
D3
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  20  21  22  23  24  25
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
Requete SQL de selection complexe[SQL SERVER] Ajout d'une colonne en PS...mais inutilisable
[ODBC] DSN pour se connecter à une base SQL[PDO/SQL] Aide selection et classement (JOIN ??)
Problème conditions requete SQLSQL/PHP BDD de réservation de chambres
Jointure 'LIKE' SQL => BOtable SQL Ajouter une colonne au lieu de creer une nouvelle table
Requête SQL complexe 
Plus de sujets relatifs à : BlaBla@SQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR