Actualización con interruptor y unión interna -- ms-access campo con join campo con switch-statement campo con sql-update camp Relacionados El problema

Update with switch and inner join


0
vote

problema

Español

Me dan una tabla para una gama de códigos de opciones, modelos y disponibilidad de otra persona. Actualmente, estos se actualizan a mano en el back-end (lo conozco ...) y tome una friolera de 3 meses. Quiero automatizar el proceso, intenté usar el caso cuando, pero parece que el acceso no puede manejarlo. Corrí una consulta que se actualizó en función de una cláusula y funcionó bien, ver más abajo. La Tabla 1 está en mi DB, la Tabla 2 son los datos que me dan traducir a un formato utilizable. Es solo una mesa con 2 columnas; Códigos de opciones y disponibilidad (relevante para un modelo específico)

  UPDATE Table1 SET Table1.Availability = 'Y' WHERE  (     SELECT Table1.Availability     FROM Table1     INNER JOIN Table2     ON Table1.Code = Table2.Code     WHERE Table2.Availability='OPT' )   

Esto funciona, pero requeriría una nueva consulta para cada tipo de disponibilidad. A continuación se muestra mi intento de actualizarse para cada tipo de disponibilidad. Dice que hay un error de sintaxis @ switch (...

  UPDATE Table1 SET Table1.Availability =  Switch(         Table2.Availability = 'OPT', 'Y',         Table2.Availability = 'STD', 'S',          Table2.Availability = 'DEL', 'N'     ) FROM Table1 INNER JOIN Table2 ON Table1.Code = Table2.Code WHERE ModelCode = '1234' ;   

No estoy seguro de si estoy usando CAMPARE CORRECTAMENTE AQUÍ, AYUDA A LA AYUDA A LA AYUDA. Si no está claro, lo que quiero es si Table2.Availability = Opt, actualice Table1.Availability a 'y' donde el código es el mismo y modelo = modelo específico

Tengo que especificar un código modelo, ya que la disponibilidad para un código de opción determinado (código) es único. Los datos que recibo es un desastre y es más fácil ordenarlo para modelar datos específicos.

Gracias de antemano :)

Original en ingles

I am given a table for a range of option codes, models and availability from someone else. Currently these are updated by hand in the back-end (I know...) and take a whopping 3 months. I want to automate the process, I tried using CASE WHEN but it seems Access cannot handle it. I ran a query that updated based on one clause and it worked fine, see below. Table 1 is in my db, Table 2 is the data I am given translated in to a usable format. It is just a table with 2 columns; option codes and availability (relevant to a specific model)

UPDATE Table1 SET Table1.Availability = 'Y' WHERE  (     SELECT Table1.Availability     FROM Table1     INNER JOIN Table2     ON Table1.Code = Table2.Code     WHERE Table2.Availability='OPT' ) 

This works but would require a new query for every availability type. Below is my attempt at updating for each availability type. It says there is a syntax error @ Switch(...

UPDATE Table1 SET Table1.Availability =  Switch(         Table2.Availability = 'OPT', 'Y',         Table2.Availability = 'STD', 'S',          Table2.Availability = 'DEL', 'N'     ) FROM Table1 INNER JOIN Table2 ON Table1.Code = Table2.Code WHERE ModelCode = '1234' ; 

I'm not sure if I am using switch correctly here, help appreciated. If it isn't clear pretty much what I want is If Table2.Availability = OPT, UPDATE Table1.Availability to 'Y' where Code is the same and Model = specific model

I have to specify a model code as the availability for a given option code (Code) is unique. The data I am given is a mess and it is easiest to sort it in to model specific data.

Thanks in advance :)

           
 
 

Lista de respuestas

0
 
vote
vote
La mejor respuesta
 

Considere la siguiente sintaxis probada y de trabajo:

  int nEven = max/2 - min/2 + 1 - (min%2)9  
 

Consider the following tested and working syntax:

UPDATE Table1 INNER JOIN Table2 ON Table1.Code = Table2.Code SET Table1.Availability =  Switch(         Table2.Availability = 'OPT', 'Y',         Table2.Availability = 'STD', 'S',          Table2.Availability = 'DEL', 'N'     ) WHERE ModelCode = '1234' ; 
 
 
   
   

Relacionados problema

3  Update Query SQLite - Android  ( Update query sqlite android ) 
No puedo descifrar una simple consulta de actualización en SQLite en mi aplicación de Android ... aquí está la consulta, int fav = 1; Cursor c = sqliteDB.r...

1  Generación de la cuenta de la actualización de PHP MySQL de los valores del formulario  ( Php mysql update statment generation from form values ) 
Estoy creando una capa abstracta de base de datos muy pequeña, quiero enviar una matriz de variables que obtuve de un formulario y generar una declaración SQL...

26  ¿Cómo usar el disparador de actualización para actualizar otra tabla?  ( How to use update trigger to update another table ) 
Soy nuevo en desencadenantes y desea crear un disparador en una actualización de una columna y actualizar otra tabla con ese valor. Tengo Tabla1 con una col...

-1  Actualizar mysql en si la condición en PHP  ( Update mysql in if condition in php ) 
Tengo un problema. En visual_form_builder (complemento de WordPress) que me gustaría publicar el valor de los campos y, después de estos valores de campo, m...

1  Número de actualización de TSQL  ( Tsql update issue ) 
Aceptar los fanáticos del servidor SQL Tengo un problema con un procedimiento almacenado heredado que se encuentra dentro de una instancia de SQL Server 2008 ...

0  Actualizar un campo basado en subtotal de otra tabla  ( Update a field based on subtotal from another table ) 
Estoy usando Oracle (10). Tengo dos tablas de la siguiente manera: Table1 (uniq rows): ID AMOUNT DATE Table2: ID AMOUNT1 AMOUNT2 ...AMOUNTN D...

0  Necesito usar la salida (su valor) de una consulta MySQL en otra  ( I need to use the output its value of one mysql query in another ) 
Tengo problemas para usar la salida de una consulta como un valor en otro. La cosa es que necesito obtener el precio de un producto (que se logra con éxito) u...

0  Actualización de activación de MSSQL en la columna  ( Mssql trigger update on column ) 
Tengo 2 tablas y quiero que la Tabla 1 tenga un gatillo que inserte o actualice en la Tabla 2, pero no estoy seguro de cómo hacerlo. Tabla 1: CREATE TABL...

1  Oracle SQL - Actualizar la misma tabla basada en otro valor de atributo  ( Oracle sql update same table based on another attribute value ) 
Tengo una tabla en Oracle, que tiene 4 atributos con los siguientes valores attribute_a attribute_b attribute_c attribute_d abcd1 ...

412  Múltiples actualizaciones en MySQL  ( Multiple updates in mysql ) 
Sé que puede insertar varias filas a la vez, ¿hay una manera de actualizar varias filas a la vez (como en una consulta) en MySQL? Editar: Por ejemplo, tengo...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos